ASP.NET页面上显示的SQL <二进制数据>图像类型

Ver*_*ian 2 .net c# sql webforms

我有一个小应用程序用于拍摄网络摄像头图像并将此图像作为二进制数据放入sql数据库,并且工作正常.但是我有一个单独的.net网页的问题,我想通过最简单的方式在页面上显示图像.

这里有一些示例代码,但它并不多,因为我正在尝试从头顶开始钻头,如果我在任何接近解决方案的地方都没有线索.

public partial class Default2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        ConnectionStringSettings settings = ConfigurationManager.ConnectionStrings["ConnectionString"];
        SqlConnection con = new SqlConnection(settings.ConnectionString);

        SqlCommand MyCmd;

        MyCmd = new SqlCommand("SELECT image FROM contractors WHERE number like @number", con);
        MyCmd.Parameters.AddWithValue("@number", "1");
        Image1 = MyCmd.ExecuteScalar();
    }
Run Code Online (Sandbox Code Playgroud)

对此我收到错误消息

错误1无法将类型'object'隐式转换为'System.Web.UI.WebControls.Image'.存在显式转换(您是否错过了演员?)

但我不知道我是否沿着正确的路线走,所以我在这里发布的不仅仅是关于那个,而是关于我整体想要做的事情.

Ode*_*ded 5

您将查询的结果直接分配给Image变量 - 这将永远不会起作用,因为Image控件需要一个URL才能在ASP.NET页面上显示图像.

最常见的方法是编写一个Http Handler,它将返回图像数据并使用处理程序URL作为ImageUrl.

请参阅 MSDN页关于HTTP处理程序,以及如何实现你在找什么SO问题.