Asp.net mvc 存根更新实体框架中的实体

Asp.net mvc 存根更新实体框架中的实体,asp.net-mvc,entity-framework,entity-framework-5,entity-framework-6,Asp.net Mvc,Entity Framework,Entity Framework 5,Entity Framework 6,我想要用存根更新方式更新实体框架6中的一个实体属性(Count),实际上我想要加上一个Count属性值,而不需要查询数据库。我怎么能做到 //... var stub = new entity {Id = id}; _articles.Attach(stub); stub.Count++; // Count always is 1! How i can do this without fetch/query database? con

我想要用存根更新方式更新实体框架6中的一个实体属性(
Count
),实际上我想要加上一个
Count
属性值,而不需要查询数据库。我怎么能做到

      //...
      var stub = new entity {Id = id};
      _articles.Attach(stub);

      stub.Count++; // Count always is 1! How i can do this without fetch/query database?
      context.SaveChanges();
      //...

我知道的唯一方法是使用存储过程

create proc sp_UpdateCount @Id int
as
update [dbo].[EntityTable] set [Count] = [Count] + 1
where [Id] = @Id 
然后在代码中运行它

SqlParameter paramId = new SqlParameter("@Id", id);
context.Database.ExecuteSqlCommand("sp_UpdateCount @Id", paramId);
请注意,这将立即运行该过程,您不必为此调用SaveChanges。如果要在带有其他更改的事务中执行该过程,请确保使用TransactionScope显式创建一个过程


希望有帮助

好吧,你需要一些当前值来增加它。我不知道你是如何从数据库中得到这些信息的。@user197508嗨,你没有对我的答案做任何评论,只是想知道它是否对你有帮助?如果没有,我能做些什么来帮助你回答你的问题吗?