Я только собираюсь начать копаться в nHibernate, и я надеюсь, что вы можете дать мне небольшой старт здесь.
Я считаю, что POCO должен иметь открытый конструктор без параметров (?).А для дочерних коллекций используйте IList (хотя я видел IBag в некоторых примерах) (?)
Меня также интересует, какой доступ я могу предоставить или запретить публично для объектов.Вот пример:
public class Poco
{
private IList<ChildPoco> _childPocos;
//1) can use IEnumerable? Or have to use IList? Or third way?
public IEnumerable<ChildPoco> ChildPocosEnumerable
{
get { return _childPocos.AsEnumerable(); }
}
}
public class ChildPoco
{
private string _name;
public string Name
{
get { return _name; }
//2) protected/public/private set?
}
}
Итак, выше вы можете увидеть // 1) и // 2), можете ли вы просто объяснить, какие у меня есть варианты, которые nhibernate будет поддерживать?
Немного дополнительной информации, если это поможет.Желание в 1) использовать IEnumerable - сделать публичное лицо коллекции доступным только для чтения.
То же самое относится и к 2) с именем.Я хотел бы, чтобы это читалось только здесь.
Причина, по которой я спрашиваю, состоит в том, что у меня есть средства для создания некоторых pocos в данный момент, но я не смогу начать с nhibernate до тех пор, пока не попытаюсь немного запланировать заранее,
Спасибо.