2009-09-23 2 views
0

Как я могу использовать Inheritance в Entity Framework с .NET RIA Services? Проблема: Если в EF есть наследование, приложение silverlight не скомпилировано. Вы можете мне помочь?. Службы и наследование .NET RIA в EF

+0

Нет, я не могу вам помочь. Нет, если вы не указали фактическую ошибку компилятора. –

+0

факт, что RIA не может генерировать наследование в клиентском коде. Я ищу людей, которые работают с RIA и решают такую ​​проблему. – Lexxpin

+0

Я не согласен с «фактом». Но если вы не хотите показать, что вы на самом деле пытаетесь сделать и что такое ошибка компилятора, я не могу помочь. –

ответ

1

Это:

Тип 'Common.Individual' является прямым или косвенным подклассом типа 'Common.Customer'. DomainServices не может вернуть тип, являющийся подклассом другого типа, возвращаемого из той же DomainService.

... не означает «отсутствие поддержки наследования». Это делает означает, что (в текущей версии служб RIA) вы не можете вернуть родительский и дочерний тип клиенту.

Это ограничение, и это ограничение, с которым вам приходится жить в RIA Services. Тем не менее, я не думаю, что это так сильно, как ограничение, как подразумевает поток, который вы ссылаете. Это не значит, что вы вообще не можете использовать наследование. Кроме того, я считаю, что наследование, как правило, чрезмерно используется при сопоставлении объектов по причинам, которые я подробно объясняю в this presentation.

Так что пока я не могу исправить ограничения, мои предложения являются:

  • Использование композиции вместо наследования при необходимости (см представление упомянутой выше).
  • Когда вы должны использовать наследование, RIA Services потребует, чтобы вы не возвращали родительский тип.