我知道有一种方法可以将图像作为图像类型或varbinary类型上传到数据库,但是,我整整一周搜索,我找不到任何可以帮助我的东西,所以这真的是我的最后一招,如果有人知道的话如何将图像上传到数据库,我正在使用sql Server 2005 Express.
谢谢
解决方法
您应该能够访问Request的File集合并为每个上载的文件获取HttpPostedFile实例.从文件中获取InputStream并将其读入列属性的字节数组中.我假设这是你的DAL将varbinary映射到你的业务类的方式 – 如果没有,说它是一个原生的Image,那么你需要在保存之前进行转换.以下示例使用LINQ2sql.
MyClass obj = new MyClass(); obj.Name = Request["name"]; // other properties obj.Alt = Request["altText"]; HttpPostedFile file = Request.Files[0]; if (file != null) { obj.Image image = new byte[file.ContentLength]; file.Read(obj.Image,file.ContentLength]; } using (DataContext context = new DataContext()) { context.InsertOnSubmit( obj ); context.SubmitChanges(); }