Вам не нужно читать каталог файлов hbm.XML, так как SessionFactory
содержит MetaData
относительно всех отображаемых объектов.Один из способов найти все метаданные для сущности заключается в следующем;
После создания SessionFactory: -
var metaData = SessionFactory.GetClassMetadata(typeof(Model.Entities.Client));
for (int i = 0; i < metaData.PropertyNames.Length -1; i++)
{
System.Diagnostics.Debug.Print(metaData.PropertyNames[i]);
System.Diagnostics.Debug.Print(metaData.PropertyNullability[i].ToString());
}
В моем случае я получаю следующее: -
Name
False
Address1
False
Address2
True
...
Postcode
True
Помните, что FALSE означает NOT-NULL, то естьсвойство ожидает запись
Другой способ - добавить DataAnnotations
к свойствам вашей модели.
[Required(ErrorMessage = "You must supply a postcode")]
public virtual string Postcode { get; set; }
В Интернете есть хорошие статьи, которые покажут вам, как использовать это в проекте winforms.