Свободный nHibernate и интерфейсы - PullRequest
0 голосов
/ 02 октября 2011

Хорошо ли работает свободный nHibernate при использовании интерфейсов вместо конкретных классов в качестве свойств?

Например, у спортивного стадиона есть ссылка на город, в котором он находится, поэтому наши интерфейсы / конкретные классы выглядят следующим образом

Интерфейс:

ICity  
  int Id;  
  string Name;  

IStadium
 int Id;  
 string Name;  
 ICity City;

Класс бетона:

class City: ICity;  
   ...

class Stadium: IStadium;
  public virtual int Id {get; private set; }  
  public virtual string Name { get; set; }
  public virtual ICity City { get; set; } //<- NOTE: Reference to interface instead of the class

Картограф:

public class StadiumMap : ClassMap<Stadium>
{
    public StadiumMap() 
    {
       ...
       References(x => x.City).Column("Id");
       ...
    }
}

Так будет ли вышеописанное нормально работать в беглом nhibernate или мне придется заменить мой "ICity" на "City"?

1 Ответ

0 голосов
/ 03 октября 2011

Немного не по теме, но я сомневаюсь, что ваши доменные классы выигрывают от реализации интерфейсов. Джеймс Грегори сказал, что лучше .

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