Почему эта строка общего кода работает для одного объекта, а не для другого? - PullRequest
1 голос
/ 03 января 2012

У меня проблемы с использованием общего репозитория http://www.codeproject.com/KB/architecture/RepositoryUnit.aspx

В "FetchEntityName" есть строка кода, которая, по-видимому, дает сбой для некоторых объектов, а не для некоторых других, все они сделаны одинаково жестко!

Я сузил его до этого выражения часов, возвращающего ложь. (я взял 18 как индексатор, потому что это одна из сущностей (группа), которая, кажется, не работает хорошо)

typeof(IQueryable<>).MakeGenericType(typeof(T)).IsAssignableFrom(this.ObjectContext.GetType().GetProperties()[18].PropertyType)

возвращает ложь! левая сторона:

typeof(IQueryable<>).MakeGenericType(typeof(T))   

возвращается в часы:

{Name = "IQueryable`1" FullName = "System.Linq.IQueryable`1[[Domain.Groep, Domain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"}    System.Type {System.RuntimeType}

правая сторона:

this.ObjectContext.GetType().GetProperties()[18].PropertyType

возвращается в часы:

{Name = "ObjectSet`1" FullName = "System.Data.Objects.ObjectSet`1[[Contacts.Groep, Domain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"}    System.Type {System.RuntimeType}

На английском?

Почему ObjectSet и IQueryable не могут быть назначены друг другу для некоторых объектов в моем EDMX?

1 Ответ

1 голос
/ 03 января 2012

У меня был второй EDMX, в котором была сущность, которая вызывала все эти проблемы.

Простое удаление дубликата правого исправления ;-)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...