首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用LINQ SQL查询更新是否成功?

使用LINQ SQL查询更新是否成功?
EN

Stack Overflow用户
提问于 2013-01-16 03:02:12
回答 3查看 614关注 0票数 1

我在一篇教程中找到了这段代码:

代码语言:javascript
运行
复制
Product bev1 = beverages.ElementAtOrDefault(10);
if (bev1 != null)
{
    Console.WriteLine("The price of {0} is {1}. Update to 20.0", 
                      bev1.ProductName, bev1.UnitPrice);
    bev1.UnitPrice = (decimal)20.0;
}
// submit the change to database
db.SubmitChanges();

我们如何知道更新是否成功?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-01-16 03:03:30

如果更新不成功,将抛出异常。如果没有抛出异常,则成功。

票数 2
EN

Stack Overflow用户

发布于 2013-01-16 03:06:36

知道的一种方法是没有抛出异常。

确保使用GetChangeSet方法来获取数据上下文跟踪的已修改对象的第二种方法

示例表单msdn

代码语言:javascript
运行
复制
Northwnd db = new Northwnd(@"c:\northwnd.mdf");

var custQuery =
    from cust in db.Customers
    where cust.City == "London" 
    select cust;

foreach (Customer custObj in custQuery)
{
    Console.WriteLine("CustomerID: {0}", custObj.CustomerID);
    Console.WriteLine("\tOriginal value: {0}", custObj.City);
    custObj.City = "Paris";
    Console.WriteLine("\tUpdated value: {0}", custObj.City);
}

//get object modified 
ChangeSet cs = db.GetChangeSet();
Console.Write("Total changes: {0}", cs);
// Freeze the console window.
Console.ReadLine();

db.SubmitChanges();
票数 2
EN

Stack Overflow用户

发布于 2013-01-16 03:06:52

这取决于你所谓的“成功”是什么意思。如果你所说的成功意味着“没有发生错误”,那么没有异常就会告诉你这一点。如果您的意思是“数据库中的数据按照我所期望的那样更新了”,那么您需要离线查询数据库,或者创建另一个上下文并通过它运行查询来验证发生的更改。

您可以编写不会生成异常但不会按预期方式更新数据库的代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14344953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档