首次记录{EntityFramework concurrecy错误

时间:2016-07-19 12:16:17

标签: asp.net-mvc entity-framework

这是对象Image

[Key]
public int Id { get; set; }           //primary key
public string Path { get; set; } //not null
public string Name { get; set; } //not null
public string Url { get; set; }  //allows null
public string SecureUrl { get; set; } //allows null

EFDbImageRepository

public void UploadToCloud(Image image)
{
    System.Diagnostics.Debug.WriteLine(image.Id);
    if(image.Id == 0)
    {
        context.Images.Add(image);
    }
    context.SaveChanges();
}

在UploadImage操作中的控制器

 ...   
 Image image = new Image();
 image.init(path, "defaultName1", "type");
 imageRepository.UploadToCloud(image);
 ...

在SaveChanges的那一刻,我有例外:EntityFramework.dll中的System.Data.Entity.Infrastructure.DbUpdateConcurrencyException

此外,我发现此消息:Entity of type Image in state Added could not be updated

据我所知,当两个用户试图同时修改一个数据时,会出现并发错误。在我的MVC项目用户加载文件的窗​​体。表单向控制器发送post请求,将图像保存到服务器和数据库。我在localhost运行应用程序,只有我可以加载图像。我还没有添加任何记录。

如何使用Entity Framework向数据库添加记录?

0 个答案:

没有答案