C# 从ASP.net数据库检索图像
我一直在使用AdventureWorks数据库进行一个项目。它自己的网站几乎是完整的,除了一个问题,那就是如何处理SQL数据库中的varbinary图像。我有一个从数据库返回产品的数据访问类和一个获取/设置值的product.cs类。我看过关于阅读数据的教程,但我想在product.cs类中阅读图像,但不知道如何正确地阅读。我从来没有从MSSQL数据库中检索过图像,所以我在这方面的知识还不够完善 这里是productDB访问类C# 从ASP.net数据库检索图像,c#,asp.net,sql-server,C#,Asp.net,Sql Server,我一直在使用AdventureWorks数据库进行一个项目。它自己的网站几乎是完整的,除了一个问题,那就是如何处理SQL数据库中的varbinary图像。我有一个从数据库返回产品的数据访问类和一个获取/设置值的product.cs类。我看过关于阅读数据的教程,但我想在product.cs类中阅读图像,但不知道如何正确地阅读。我从来没有从MSSQL数据库中检索过图像,所以我在这方面的知识还不够完善 这里是productDB访问类 [DataObject] public class ProductD
[DataObject]
public class ProductDB
{
[DataObjectMethod(DataObjectMethodType.Select)]
public static List<Product> GetProducts()
{
List<Product> productList = new List<Product>();
SqlConnection con = new SqlConnection(GetConnectionString());
string sel = "Select statement goes here"
SqlCommand cmd = new SqlCommand(sel, con);
con.Open();
SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
Product product;
while (rdr.Read())
{
product = new Product();
product.ProductID = rdr["ProductID"].ToString();
product.Name = rdr["Name"].ToString();
product.ProductNumber = rdr["ProductNumber"].ToString();
product.ListPrice = Convert.ToInt32(rdr["ListPrice"]);
product.ProductDescriptionID = Convert.ToInt32(rdr["ProductDescriptionID"]);
product.ProductModelID = Convert.ToInt32(rdr["ProductModelID"]);
product.Description = rdr["Description"].ToString();
productList.Add(product);
}
rdr.Close();
return productList;
}
private static string GetConnectionString()
{
return ConfigurationManager.ConnectionStrings[
"AdventureWorks"].ConnectionString;
}
}
如果您已经阅读了这么多教程,为什么不尝试在代码中实现其中一个呢?您的具体问题是什么?从SQL数据库读取图像不是问题,我只想有一些类似于公共字符串ProductID{get;set;}的东西,但对于图像。问题是,我不知道图像是否可以像其他值一样传递给类。你可以使用
Image
class:public Image Preview{get;set;}
或将其作为byte[]
传递,并仅在必要时转换为Image
。谢谢,这可能是我一直在搜索的内容。
public class Product
{
public Product()
{
}
public string ProductID { get; set; }
public string Name { get; set; }
public string ProductNumber { get; set; }
public int ListPrice { get; set; }
public int Weight { get; set; }
public int Size { get; set; }
public int ProductDescriptionID { get; set; }
public int ProductModelID { get; set; }
public string Description { get; set; }
}