2013-03-08 4 views
0

Моей установки заключается в следующем:ReSharper не отображает свойства от базового класса при создании равенства компараторов

У меня есть классы POCO, которые генерируются шаблонами T4 основы с моей базой данных. Мои модели домена наследуются от этих POCOs. В основном модели POCO существуют, поэтому, когда я меняю базу данных, мне не нужно постоянно обновлять модель вручную (мы используем Dapper как наш ORM).

Мой вопрос:

Когда я пытаюсь использовать ReSharper для генерации компараторов равенства для моих моделей предметной области интерфейса ReSharper не включает в себя свойства из базового класса POCO только свойство от модели предметной области. Почему это происходит, когда в моем случае модели домена наследуются от POCOs и, следовательно, имеют все свойства от POCOs?

Это мой ПОКО класс:

namespace Models.Database 
{ 
     [Table("Restaurants")] 
     public abstract class Restaurant 
     { 
      [Key] 
      public virtual int Id { get; set; } 
      public virtual string RestaurantName { get; set; } 
      public virtual int? PreferredDayOfWeek { get; set; } 
      public virtual int? RestaurantTypeId { get; set; } 
     } 
} 

И тогда моя модель домена:

public class Restaurant : Models.Database.Restaurant 
{ 
     public virtual RestaurantType RestaurantType { get; set; } 
} 
+0

Звуки как вопрос для команды R #, но они, вероятно, смотрят этот тег, но эти ребята из JetBrains на моем опыте. – MrBoJangles

+0

Было бы лучше, если бы вы могли включить образцы кода. Без них я могу дать только y ou this advise: попытайтесь создать сопоставители равенства для класса POCO, а затем для модели домена. Будет ли модель сравнения модели включать вызов базового компаратора в вашем случае? –

+0

Я обновил исходное сообщение с моим примером модели. – Marko

ответ

3

Это известная проблема, запланированная функция для R # 8.0, жаль :(

+0

Не нужно приговаривать ... :) Я просто подумал, что я что-то пропускаю, потому что я высоко ценю ReSharper. – Marko