C# 如何使用存储在Sql数据库中的引用显示图像?
我正在制作一个迷你cms,用户可以将图像上传到他们网站的侧栏(母版页中的一个div),到目前为止,我已经在db中创建了insert语句,并将图像上传到了images文件夹,但我正在努力显示存储在sql数据库中的图像引用中的图像,我发现的所有教程似乎都指向将我的图像上载到数据库,但我只想使用数据库中存储的引用来创建我的图像 到目前为止,我得到的是: Sql横幅标记表:C# 如何使用存储在Sql数据库中的引用显示图像?,c#,asp.net,sql,ado.net,C#,Asp.net,Sql,Ado.net,我正在制作一个迷你cms,用户可以将图像上传到他们网站的侧栏(母版页中的一个div),到目前为止,我已经在db中创建了insert语句,并将图像上传到了images文件夹,但我正在努力显示存储在sql数据库中的图像引用中的图像,我发现的所有教程似乎都指向将我的图像上载到数据库,但我只想使用数据库中存储的引用来创建我的图像 到目前为止,我得到的是: Sql横幅标记表: ImageId - Int - Primary Key ImageRef - nvarchar(50) Url - nvarch
ImageId - Int - Primary Key
ImageRef - nvarchar(50)
Url - nvarchar(50)(this is so users can but href on the image)
SortOrder - nvarchar(50)
Active - int
插入方法:
string connectionString = ConfigurationManager.ConnectionStrings["testDb"].ToString();
public void insertImage(string iRef, string href, string sOrder, int a)
{
string query = "INSERT INTO dbo.BannerManagment (ImageRef,Url,SortOrder,Active)" + " VALUES(@ref,@url,@sortorder,@active)";
using (SqlConnection con = new SqlConnection(connectionString))
using (SqlCommand comm = new SqlCommand(query, con))
{
comm.Parameters.Add("@ref", SqlDbType.VarChar).Value = iRef;
comm.Parameters.Add("@url", SqlDbType.VarChar).Value = href;
comm.Parameters.Add("@sortorder", SqlDbType.VarChar).Value = sOrder;
comm.Parameters.Add("@active", SqlDbType.Int).Value = a;
con.Open();
comm.ExecuteNonQuery();
}
}
调用类:
BannerImages image = new BannerImages();
image.insertImage(FileUpload1.FileName.ToString(), txtHref.Text, txtSort.Text, i);
您只存储图像的URL(为什么需要文件上载控件?)。若您只保留URL,那个么删除文件上传和查询图像URL(直接用于img标记src)。如果您想实际存储图像数据,那么……(将其转换为字节数组到Base64或考虑使用SQLServer中的文件流),然后将其返回……因此,它们可以将图像上传到服务器,否则它将显示断开的链接,然后从DB获取引用。我正在努力编写查询以显示它有一个图像。我是怎么把它变成绳子的。那么我可以这样做了,dbVarHere?如果你存储URL,你可以这样做。如果我添加完整的URL路径,你对如何编写查询有什么建议吗?