图像文件名通过添加vendorID
之前的唯一存储,就像“200018hari”一样。下图显示了filename
列中存储Cmp_DocPath
的表格。
当用户从下拉列表中选择VendorID
时,我想显示服务器文件夹“D:\ Upload \ Commerical Certificates”中的特定vendorID
图像。(图片不会显示完整图片)使用下拉列表进行表单设计。)
我在内联代码中尝试此操作但图像不显示。但是我知道如果用户从下拉列表中选择其他VendorID
,这对我没有帮助。
我将如何处理C#中的代码隐藏?
<asp:Image ID="Image1" runat="server" Height="400px" Width="400px"
ImageUrl ="AdminCompanyInfo.aspx?FileName=~/Upload/Commerical Certificates/200027mcp.png"/>
答案 0 :(得分:0)
如果您要获取与Cmp_DocPath
相关联的图片(VendorID
),则需要使用Generic Handler
。以下应该是Generic Handler
的技巧。
Generic Handler
将从数据库中读取图像名称那必须奏效。
答案 1 :(得分:0)
根据朋友的建议,我更改了将图像存储在物理路径中的代码&#34; D:\ Upload&#34;并将上传的图像存储在&#34; D:\ inetpub \ wwwroot \&#34;中。最后,在IIS中创建虚拟目录并提供&#34; D:\ inetpub \ wwwroot \ Upload&#34;作为物理路径。下面的C#代码从虚拟路径中检索图像。
private void CallImage()
{
SqlConnection SqlCon = new SqlConnection(GetConnectionString());
SqlCon.Open();
string query = "SELECT FilePath FROM CompanyInfo
WHERE VendorID= '" + ddlVendorID.SelectedValue + "'";
SqlCommand SqlCmd = new SqlCommand(query, SqlCon);
SqlDataAdapter da = new SqlDataAdapter(SqlCmd);
DataTable dt = new DataTable();
da.Fill(dt);
string ImageName = Convert.ToString(dt.Rows[0][0].ToString());
Image1.ImageUrl = ("~\\Upload\\Commerical Certificates\\" + ImageName);
SqlCon.Close();
}