gpt4 book ai didi

c# - Entity Framework : Database. ExecuteSqlCommand 方法

转载 作者:太空狗 更新时间:2023-10-29 18:12:04 28 4
gpt4 key购买 nike

因此,我在我的 MVC 4 应用程序中运行了一个基本的更新语句。我这样调用它(SQL Server 2008 R2,Entity Framework 5.0):

var requestData = requestInfo.Database.ExecuteSqlCommand("UPDATE TABLE Blah.. ");

命令成功完成,但有时 requestData 返回 1,有时返回 2。我找不到任何文档或解释这些返回值的含义。我看过这里:

http://msdn.microsoft.com/en-us/library/gg679456(v=vs.103).aspx

但是,它并没有给出任何明确的答案。

如果有人能提供一个链接来解释这个命令的返回值,我将不胜感激。

最佳答案

The command completes successfully, but sometimes requestData returns 1, sometimes it returns 2. I cannot find any documentation or explanation of what these return values mean.

ExecuteSqlCommand 将返回受您的UPDATE 语句影响的行数。


测试:

//Update ID 2
using (var context = new Test2Context())
{
var items = context.MyTestClasses.Where(x => x.Id == 2).Count();
var rowsAffected = context.Database.ExecuteSqlCommand("UPDATE MyTestClasses SET Name = 'Test2' WHERE Id = 2");
Debug.WriteLine("--First Test--");
Debug.WriteLine("items: {0}", items);
Debug.WriteLine("rowsAffected: {0}", rowsAffected);
}

//Update all
using (var context = new Test2Context())
{
var items = context.MyTestClasses.Count();
var rowsAffected = context.Database.ExecuteSqlCommand("UPDATE MyTestClasses SET Name = 'Updated'");
Debug.WriteLine("--Second Test--");
Debug.WriteLine("items: {0}", items);
Debug.WriteLine("rowsAffected: {0}", rowsAffected);
}

结果:

--First Test--
items: 1
rowsAffected: 1
--Second Test--
items: 3
rowsAffected: 3

关于c# - Entity Framework : Database. ExecuteSqlCommand 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19276996/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com