gpt4 book ai didi

c# - LINQ to SQL context.GetChanges

转载 作者:太空宇宙 更新时间:2023-11-03 11:53:00 25 4
gpt4 key购买 nike

我在 LINQ to SQL dbml 文件中有两个表。我正在尝试将所有更改提交到上下文,我可以通过使用

var myOtherContext;
var changes = context.GetChangeSet();

foreach (var change in changes)
{
Type t = change.GetType();
if (change is Product )
{
myOtherContext.GetTable<Product>().InsertOnSubmit((Product) change);
}
if (change is Supplier)
{
myOtherContext.GetTable<Supplier>().InsertOnSubmit((Supplier)change);
}
}

基本上,我将一个上下文中发生的所有更改复制到另一个上下文 (myOtherContext)。我不想使用 if 语句来检查更改的类型。有什么办法可以写:

myOtherContext.GetTable<typeof(change)>().InsertOnSubmit((typeof(change) change);

我们将不胜感激。

问候,帕明德

最佳答案

如何使用非通用版本:

foreach (var change in changes.Inserts) // note inserts
{
myOtherContext.GetTable(change.GetType()).InsertOnSubmit(change);
}

关于c# - LINQ to SQL context.GetChanges,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1576278/

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