Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将图像插入数据库?_C#_Asp.net_Sql - Fatal编程技术网

C# 如何将图像插入数据库?

C# 如何将图像插入数据库?,c#,asp.net,sql,C#,Asp.net,Sql,如何将streamreader而不是Filestream reader放入数据库?下面是另一篇文章: 但是,普遍的共识是,最好将映像存储在文件系统中。下面是另一篇文章: 但是,普遍的共识是最好将映像存储在文件系统中。可能的重复我已经回答了关于堆栈溢出的相同问题,这里:-[如何在sql server中存储映像?][1][1]:请参阅下面的链接:这样做很少是个好主意。我几乎总是建议将文件存储在文件系统中,并将路径存储在数据库中。这可以防止您的数据库过快变得过大,使备份、还原、复制等变得更容易。@

如何将streamreader而不是Filestream reader放入数据库?

下面是另一篇文章:


但是,普遍的共识是,最好将映像存储在文件系统中。

下面是另一篇文章:


但是,普遍的共识是最好将映像存储在文件系统中。

可能的重复我已经回答了关于堆栈溢出的相同问题,这里:-[如何在sql server中存储映像?][1][1]:请参阅下面的链接:这样做很少是个好主意。我几乎总是建议将文件存储在文件系统中,并将路径存储在数据库中。这可以防止您的数据库过快变得过大,使备份、还原、复制等变得更容易。@Caspar Kleijne-很好的观点-改为一条评论。可能重复的我已经回答了关于堆栈溢出的相同问题,这里:-[如何在sql server中存储映像?][1][1]:参考下面的链接:这样做很少是个好主意。我几乎总是建议将文件存储在文件系统中,并将路径存储在数据库中。这可以防止数据库过快变得过大,从而使备份、还原、复制等工作变得更容易。@Caspar Kleijne-好的观点-改为注释。如何在主机文件系统上存储映像?他会允许我吗?我不知道他是谁。您的应用程序应该对宿主环境中的子目录具有写访问权限。如何在宿主文件系统中存储映像?他会允许我吗?我不知道他是谁。您的应用程序应该对托管环境中的子目录具有写访问权限。
public void InsertAnImage(Guid i)
{
    StringBuilder sb = new StringBuilder();

    sb.Append("");

    Stream stream = FileUpload1.FileContent;
    StreamReader reader = new StreamReader(stream);

    string myConnectionString = AllQuestionsPresented.connectionString;
    using (SqlConnection conn = new SqlConnection(AllQuestionsPresented.connectionString))
    {
        // sample query with parameters to insert into db
        string sqlQuery = "INSERT INTO [UserProfile] (UserID, Picture) Values (@userId, @picture)";
        // conn is your db connection
        SqlCommand command = new SqlCommand(sqlQuery, conn);
        // creating parameters
        SqlParameter paramId = new SqlParameter("@userId", SqlDbType.Int, 4);
        paramId.Value = 45;
        // you picture parameter, and assigning its the value
        SqlParameter paramPicture = new SqlParameter("@picture", SqlDbType.Binary, myImage.Length);// red line here
        paramPicture.Value = myImage;// red line here
        // adding params to command
        command.Parameters.Add(paramId);
        command.Parameters.Add(paramPicture);
        // then execute your command
        command.ExecuteNonQuery();
    }
}