将stringbuilder内容保存到SQL DB映像字段中

时间:2011-03-25 08:03:26

标签: asp.net vb.net

在我的webapp中,我已经为csv文件创建并填充了一个stringbuilder。通常我会直接将其写入响应对象,供用户通过浏览器下载。 但是,现在我想将它保存到SQL DB映像字段。是否有直接的流媒体方式?或者我是否必须先将其保存到文件中,然后再将其读回?

TIA人员!

3 个答案:

答案 0 :(得分:0)

只需将sb.ToString()传递给您的参数即可。这是唯一的文字。

答案 1 :(得分:0)

我假设您只提及Stringbuilder和CSV文件,因为这是指您之前为用户启用文件下载的体验。

您是否想要从用户接收图像文件或提供图像文件供用户下载有点不清楚?因此,我提供了两个问题的解决方案。

如何使用httpResponse从SQL Server返回图像?

  1. 从数据库中获取图像数据
  2. 设置正确的content-type回复(例如image/jpgimage/gifimage/png
  3. 将图像的字节写入原始响应流
  4. 以下是包含一些代码示例的相关主题:How to load an image in ASP.NET from a database as a file in a web browser?

    如首选答案中所述,您应该考虑实施一个httpHandler来提供图像而不是通过ASPX页面(用于html)提供图像

    如何将图像文件上传到SQL Server数据库?

    如果您要将从file input control收到的图像文件保存到数据库中,那么您应该查看以下链接: How do you store a picture in an image column?

答案 2 :(得分:0)

首先,为什么要将文本数据存储为图像(= binary = byte array)数据类型?

如果使用n / text或n / varchar(max)列,则可以将StringBuilder的ToString()方法的结果作为参数传递给insert语句。

如果您真的坚持将文本存储为二进制字段,请使用首选Encoding.GetBytes()encoding方法检索字节数组。