Как отобразить частные поля в FluentNHibernate, используя DefaultAutomappingConfiguration - PullRequest
0 голосов
/ 14 января 2011

Руководство, данное здесь http://fluentnhibernate.org/blog/2010/05/23/feature-focus-fields.html, предполагает, что начиная с версии 1.1 функция автоматического отображения в Fluent NHibernate поддерживает сопоставление с частными полями.

Поэтому, учитывая следующий код, NHiberate должен иметь возможность сопоставления споле myValue.

public class SomeEntity
{   
   private string myValue;
   public virtual int Id { get; set; }
}

public class DomainAutomappingConfiguration : DefaultAutomappingConfiguration
{
    public override bool ShouldMap(FluentNHibernate.Member member)
    {
        return (member.IsProperty && member.IsPublic && member.CanWrite) ||
               (member.IsField && member.IsPrivate);
     }
 }

Однако когда я запускаю этот код и пытаюсь отобразить, я получаю следующее исключение:

NHibernate.PropertyNotFoundException: Не удалось найти получательдля свойства 'myValue' в классе .....

Я использую FluentNHibernate 1.1 и NHibernate 3.0.0.2001

Что я делаю не так?

1 Ответ

0 голосов
/ 08 февраля 2011

Изменение:

private string myValue;

На:

private string myValue {get;set;}

Я не уверен, что это сделает это за вас, но ошибка, которую вы получаете, заключается в отсутствии {get;} при назначении частного поля.Надеюсь, это поставит вас на правильный путь.Я не пробовал отображать частные поля.

Удачи.

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