您好,我正在努力使用LINQPad处理以下情况
While(1 = 1)
{
MyEntity _me = MyEntities.FirstOrDefault();
foreach(ChildEntity ce in MyEntity.ChildEntities)
{
Console.WriteLine(ce.Value);
}
System.Threading.Thread.Sleep(100000);
}
MyEntity(和ChildEntities集合)是自动创建的LINQ to SQL类。底层数据库中的行可以独立于此脚本进行更改,我希望在While循环的每次迭代中从数据库刷新ChildEntities集合。它目前没有。
这不起作用
this.Refresh(RefreshMode.OverwriteCurrentValues, _me);
也不是
this.Refresh(RefreshMode.OverwriteCurrentValues, _me.ChildEntities);
无论如何我可以关闭并重新打开LINQPad DataContext(我是高级用户)
答案 0 :(得分:2)
这看起来像是LINQ-to-SQL中的一个错误。
您可以通过显式实例化来重新初始化LINQPad DataContext:
while(1 = 1)
{
var freshDC = new TypedDataContext();
var me = freshDC.MyEntities.FirstOrDefault();
...
}