Pergunta

Estou usando a arquitetura S#ARP com o Fluent Nibernate e o AutomApper em um banco de dados herdado.

A coluna de ID de uma das tabelas é diferente da convenção de automóveis e, portanto, tentei substituí -la sem sucesso. Eu acabo com este erro

Fluentnhibernate.cfg.fluentConfigurationException: Uma configuração inválida ou incompleta foi usada ao criar uma sessão de fábrica. Verifique a coleta em potencial e a Coleção e o Innerexception para obter mais detalhes.

  • O banco de dados não foi configurado através do método do banco de dados.

Fluentnhibernate.cfg.fluentConfigurationException: Uma configuração inválida ou incompleta foi usada ao criar uma sessão de fábrica. Verifique a coleta em potencial e a Coleção e o Innerexception para obter mais detalhes.

  • O banco de dados não foi configurado através do método do banco de dados.

    ---- Nibernate.MappingException: (xmldocument) (3,6): XML Validação Erro: o elemento 'classe' no espaço de nome 'urna: Nibernate-mapping-2.2' tem um elemento infantil inválido 'Propriedade' em namespace 'urn: Nibernate -Mapping-2.2 '. Lista de elementos possíveis esperados: 'Meta, subseleção, cache, sincronizar, comentário, tuplizer, id, composto-id' no espaço para nome 'urna: Nibernate-mapping-2.2'. ---- System.xml.schema.xmlschemavalidationException: The Element 'Class' em Namespace 'Urn: Nibernate-Mapping-2.2' tem uma propriedade inválida para o elemento filho 'em nome de nome' Urn: Nibernate-mapping-2.2 '. Lista de elementos possíveis esperados: 'Meta, subseleção, cache, sincronizar, comentário, tuplizer, id, composto-id' no espaço para nome 'urna: Nibernate-mapping-2.2'.

Como uso a convenção ID AutomApper e defina minha coluna personalizada como o ID através da funcionalidade de substituição?

Observação: Isto é apenas para uma entidade. Eu não quero mudar a convenção de mapeamento de identificação geral
Aqui está minha função de substituição atual

  public class AuthMap : IAutoMappingOverride<Auth>
  {
    public void Override(AutoMapping<Auth> mapping)
    {
      mapping.Table("x_auth");
      mapping.Map(x => x.Id, "user_id");
      mapping.Map(x => x.SessId, "sess_id");
    }
  }
Foi útil?

Solução

Descobrir:

Use -o como

mapping.Id(x => x.Id).Column("user_id");
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top