我的RDLC设计:
我想从我的数据库中显示我的报告查看器上的图像我的reportviewer工作正常我只需要每个选择的图像我已经在我的数据库中为每个患者提供了图像我只想在我的.aspx中显示第一页我还附上了以下代码。
我的Aspx页面:
<body >
<form id="form1" runat="server">
<div class="auto-style1">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<table class="auto-style2">
<tr>
<td class="auto-style5">
<asp:Label ID="Label1" runat="server" CssClass="auto-style4"
Text="Patient Report"></asp:Label>
<asp:DropDownList ID="DropDownPat" runat="server" Height="16px"
Width="157px" AutoPostBack="True"
OnSelectedIndexChanged="DropDownPat_SelectedIndexChanged">
<asp:ListItem></asp:ListItem>
</asp:DropDownList>
</tr>
<tr>
<td class="auto-style3">
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt" Height="205px" WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt" Width="751px">
<LocalReport ReportPath="Report1.rdlc">
<DataSources>
<rsweb:ReportDataSource DataSourceId="ObjectDataSource1" Name="DataSet1" />
</DataSources>
</LocalReport>
</rsweb:ReportViewer>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="GetData" TypeName="MedImage.DataSet1TableAdapters.DataTable1TableAdapter"></asp:ObjectDataSource>
</td>
</tr>
</table>
</div>
</form>
</body>
我的.cs文件: 我想在数据库中的报表查看器上显示图像
aspx页面后面的代码在这里
public partial class PatientReport : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
populateDropDownPat();
}
}
private void populateDropDownPat()
{
try
{
patientCollection pcal = (new patientBAL()).GetAllDetailspatient();
DropDownPat.DataSource = null;
DropDownPat.DataSource = pcal;
DropDownPat.DataTextField = "patientName";
DropDownPat.DataValueField = "PatientID";
DropDownPat.DataBind();
DropDownPat.Items.Insert(0, new ListItem("--Select Patient--"));
}
catch(Exception ex)
{
}
}
protected void DropDownPat_SelectedIndexChanged(object sender, EventArgs e)
{
string name = DropDownPat.SelectedItem.Text;
patientCollection pcal = (new
patientBAL()).GetDetailsByPatientName(name);
ReportViewer1.Visible = true;
this.ReportViewer1.LocalReport.EnableExternalImages = true;
this.ReportViewer1.LocalReport.ReportPath = "Report1.rdlc";
ReportViewer1.LocalReport.DataSources.Clear();
ReportDataSource rds = new ReportDataSource("DataSet1", pcal);
this.ReportViewer1.LocalReport.DataSources.Add(rds);
this.ReportViewer1.LocalReport.Refresh();
}
}
答案 0 :(得分:0)
答案 1 :(得分:0)
用于存储Image
的数据类型:
varbinary(MAX)
byte[] bytes;
using (BinaryReader br = new BinaryReader(photo.PostedFile.InputStream))
{
bytes = br.ReadBytes(photo.PostedFile.ContentLength);
}
SqlCommand cmd = new SqlCommand("insert into img values('@harikesh')", cn);
cn.Open();
cmd.Parameters.AddWithValue("@harikesh", bytes);
int i = cmd.ExecuteNonQuery();
if (i > 0)
{
Response.Write("<script language='javascript'>alert('inserted sucess')</script>");
}
else
{
Response.Write("<script language='javascript'>alert('NOT sucess')</script>");
}
cn.Close();`
------------在报告视图上查看图像---------------
.xsd文件System.Byte[]
中的图像数据类型