C# 数据集赢得';t将图像更新到数据库

C# 数据集赢得';t将图像更新到数据库,c#,sql,sql-server,dataset,C#,Sql,Sql Server,Dataset,我试图将图像插入SQL Server数据库,它会进入数据集,但当调用save方法时,SQL Server不会更改 public void AddImage(OpenFileDialog openFileDialog1, List<Movie> movieList) { byte[] movieCover = null; FileStream movieStream = new FileStream(openFileDialog1.FileName, FileMode.

我试图将图像插入SQL Server数据库,它会进入数据集,但当调用save方法时,SQL Server不会更改

public void AddImage(OpenFileDialog openFileDialog1, List<Movie> movieList)
{
    byte[] movieCover = null;
    FileStream movieStream = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read);
    BinaryReader movieReader = new BinaryReader(movieStream);
    movieCover = movieReader.ReadBytes((int)movieStream.Length);
    var Starwars = new object[2];
    Starwars[0] = "Star Wars: Episode I - The Phantom Menace";
    Starwars[1] = "1999";
    var found = _movieSet.Tables["Movie"].Rows.Find(Starwars);

    if (found != null)
    {
        found.SetField("Cover", movieCover);
        var movieListFound = movieList.Find(x => x.Name == Starwars[0]);
    }
    else
        MessageBox.Show("Movie Not Found");
}

添加新行是可行的,但在调用save方法时,对实际数据集的任何更改都不会更新,不仅是image,而且如果我在调试中使用数据可视化工具更改表数据,也不会更新

一天后,我再次回答了自己的问题,希望得到更好的回答,但我想我的信息肯定不是最好的

我需要在Addimage方法期间调用Save()方法

public void AddImage(OpenFileDialog openFileDialog1, List<Movie> movieList)
{
     byte[] movieCover = null;
     FileStream movieStream = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read);
     BinaryReader movieReader = new BinaryReader(movieStream);
     movieCover = movieReader.ReadBytes((int)movieStream.Length);
     var Starwars = new object[2];
     Starwars[0] = "Star Wars: Episode I - The Phantom Menace";
     Starwars[1] = 1999;
     var found = MovieTable().Rows.Find(Starwars);
     if (found != null)
     {
         found["Cover"] = movieCover;
         var movieListFound = movieList.Find(x => x.Name == Starwars[0]);
     }
     else
         MessageBox.Show("Movie Not Found");
     Save();
public void AddImage(OpenFileDialog openFileDialog1,List movieList)
{
字节[]movieCover=null;
FileStream movieStream=newfilestream(openFileDialog1.FileName,FileMode.Open,FileAccess.Read);
BinaryReader movieReader=新的BinaryReader(movieStream);
movieCover=movieReader.ReadBytes((int)movieStream.Length);
var Starwars=新对象[2];
《星球大战》[0]=“星球大战:第一集——幽灵的威胁”;
星战[1]=1999年;
var found=MovieTable().Rows.Find(星战);
如果(找到!=null)
{
找到[“封面”]=电影封面;
var movieListFound=movieList.Find(x=>x.Name==Starwars[0]);
}
其他的
MessageBox.Show(“未找到电影”);
Save();
}

public void AddImage(OpenFileDialog openFileDialog1, List<Movie> movieList)
{
     byte[] movieCover = null;
     FileStream movieStream = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read);
     BinaryReader movieReader = new BinaryReader(movieStream);
     movieCover = movieReader.ReadBytes((int)movieStream.Length);
     var Starwars = new object[2];
     Starwars[0] = "Star Wars: Episode I - The Phantom Menace";
     Starwars[1] = 1999;
     var found = MovieTable().Rows.Find(Starwars);
     if (found != null)
     {
         found["Cover"] = movieCover;
         var movieListFound = movieList.Find(x => x.Name == Starwars[0]);
     }
     else
         MessageBox.Show("Movie Not Found");
     Save();