gpt4 book ai didi

c# - 我可以看到 SQL/正在使用 L2S 有效地更新多条记录吗?

转载 作者:行者123 更新时间:2023-11-30 18:05:20 26 4
gpt4 key购买 nike

我刚刚做了以下事情:

var items =
from c in Items
where
c.Pid == Campaigns.Where(d=>d.Campaign_name=="US - Autos.com").First().Pid
&& c.Affid == Affiliates.Where(e=>e.Add_code=="CD4729").First().Affid
select c;

然后我想为所有结果更新一个字段:

items.ToList().ForEach(c=>c.Cost_per_unit=8);  
SubmitChanges();

查询时,我知道我可以使用:

GetCommand(items);

查看将要执行的 SQL。

但是在提交更改时,我不知道该怎么做。

我看了:

GetChangeSet()

我看到在这种情况下大约有 18 个更新。

问题 1:使用 L2S 以这种方式更新是否存在效率问题?

问题 2(也许这应该是一个单独的问题,但我会在这里尝试):是否有一种通用的方法来监视进入 SQL Server 2008 R2 的 SQL 语句?我想我可以禁用除 TCP 之外的所有实例和 WireShark 端口(如果这些内容甚至可读的话),但我希望有更简单的方法。

最佳答案

DataContext 有一个 Log 属性,您可以 Hook 该属性以转储已执行的 SQL。还有Linq To Sql Profiler这太棒了。

关于c# - 我可以看到 SQL/正在使用 L2S 有效地更新多条记录吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5666522/

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