Доброе утро, днем или ночью,
Все еще строим На мой вопрос о неизменяемых словарях в .NET я задал следующий вопрос: если тогда TKey
и TValue
являются типами значений, вы можете создать словарь действительно неизменяемый, в том смысле, что ни его внутренняя структура, ни сами значения не могут измениться, если эти параметры являются ссылочными типами , ключи и значения могут быть легко изменены, тем самым изменяя сам словарь. Я прав?
Большое спасибо.
private static IQueryable SimulateJoinResults()
{
return from r in SessionDataProvider.Instance.ResultDataContext.Results select r;
}
private static IQueryable SimulateJoinIclFileInfos()
{
return from f in SessionDataProvider.Instance.ResultDataContext.IclFileInfos select f;
}
private static IQueryable SimulateJoinServerProfiles()
{
return from sp in sessionProfileDataContext.ServerProfiles select sp;
}
private static IQueryable SimulateJoinUsers()
{
return from u in infrastructureDataContext.Users select u;
}
Но даже такой подход не решил проблему. Я все еще получаю это сообщение в QuickWatch ... :
запрос содержит ссылки на элементы, определенные в другом контексте данных
Есть ли решение этой проблемы? Наряду с решением я также хотел бы знать, почему проблема все еще существует, и как именно новое решение устраняет ее, чтобы в следующий раз я мог сам решать такие проблемы. Кстати, я новичок в LINQ.