У меня есть запрос, который выдает ошибку, когда я использую его в проекте MVC 2.0, но не когда я запускаю модульные тесты (работает нормально).Ниже приведен запрос «Пользователь» - это сущность.Я получаю сообщение об ошибке «Известные проблемы, которые нужно учитывать для EF» (http://msdn.microsoft.com/en-us/library/bb896317.aspx)), но, по-видимому, это довольно просто, это должно сработать, и я на самом деле не делаю то, что они делают. Это нацелено на фреймворк 3.5 и серверную часть SQL 2005.
Ошибка:
"Невозможно создать постоянное значение типа 'Тип закрытия'. В этом контексте поддерживаются только примитивные типы (такие как Int32, String и Guid ')."
Запрос:
User user = (from u in db.Users
where u.UserId == (Guid)providerUserKey
&& u.Application.LoweredApplicationName == this.ApplicationName.ToLower()
select u).FirstOrDefault();
Мне удалось определить, что запрос не выполнен из-за выбора" Пользователь ". Однако тот же запрос отлично работает, когда я использую u.UserName = userNameЯ также пробовал варианты, такие как UserId.ToString () (также не поддерживается) и u.UserId.CompareTo ((Guid) providerKey)> 0. Все ошибки выбрасывания некоторого типа.
Есть идеи?
Спасибо!