PrimaryKeyNamingConvention Свободное автоматическое отображение - PullRequest
4 голосов
/ 07 декабря 2011

У меня есть вопрос об использовании PrimaryKeyNamingConvention Предположим, следующий класс:

public class banco
{
    [Required]
    public virtual int banco_id { get; set; }
   ...
}

и

public class PrimaryKeyNamingConvention : IIdConvention
{
    public void Apply(IIdentityInstance instance)
    {
        instance.Column(instance.EntityType.Name + "_id");
    }
}

и

 static AutoPersistenceModel CreateAutomappings()
 {
 ... Conventions.Setup(c =>
            {
                c.Add<PrimaryKeyNamingConvention>();
             });

Вы можете использовать что-то, как описановыше?Когда я пытаюсь запустить, возникает ошибка

У сущности banco нет сопоставленного идентификатора.Используйте метод Id для сопоставления вашего свойства идентичности.Например: Id (x => x.Id).

1 Ответ

2 голосов
/ 07 декабря 2011

Вы можете использовать такие идентификаторы. Но вам нужно сопоставить не только имя столбца, но и свойство name .

[Изменить] Код добавлен из этот вопрос

public class AutomappingConfiguration : DefaultAutomappingConfiguration
{
    public override bool IsId(Member member)
    {
        return member.Name == member.DeclaringType.Name + "Id";
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...