Обновить DataContext в LINQPad


Привет, я изо всех сил пытаюсь справиться со следующей ситуацией, используя 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. Строки в базовой базе данных могут изменяться независимо от этого сценария, и я хотел бы, чтобы коллекция ChildEntities обновлялась из базы данных на каждой итерации цикла While. В настоящее время это не так.

Это не работает

this.Refresh(RefreshMode.OverwriteCurrentValues, _me);

И

this.Refresh(RefreshMode.OverwriteCurrentValues, _me.ChildEntities);

Есть ли в любом случае, я могу закрыть и повторно открыть LINQPad DataContext (я подписчик премиум-класса)

1 3

1 ответ:

Это похоже на ошибку в LINQ-to-SQL.

Вы можете повторно инициализировать Linqpad DataContext, создав его явным образом:

while(1 = 1) 
{     
    var freshDC = new TypedDataContext();
    var me = freshDC.MyEntities.FirstOrDefault(); 
    ...
}