Pergunta

Estou usando o Nibernate com fluente. Agora, quero chamar algum procedimento armazenado e usar consultas nomeadas. Eu criei alguns XML:

<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping>
  <sql-query name="CleanAppendicesHierarchies">
    exec intf_CleanUpAppendixHierarchy
  </sql-query>
</hibernate-mapping>

    FluentConfiguration cfg =
    Fluently.Configure().Database(MsSqlConfiguration.MsSql2005.ConnectionString(
c => c.Is(dbConnectionString)).ShowSql())
.Mappings(m => m.FluentMappings.AddFromAssembly(mappingAssembly))
.Mappings(m => m.HbmMappings.AddFromAssembly(mappingAssembly));

Agora eu sempre obtive a exceção: (a maioria exceção interna) {"Hibernate-mapping xmlns = '' não era esperado."} {"Há um erro no documento XML (1, 2)."}

Eu me diverti, mas se eu remover o mapeamento do hibernato, ele reclama da tag SQL-Query.

O que há de errado na minha abordagem? Eu pesquisei no Google já encontrei exemplos, mas é claro sem fluente ....

Qualquer dica é apreciada

Foi útil?

Solução

Estranho, eu consegui trabalhando com isso:

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
                   assembly="FactsheetsDataLayer"
                   namespace="FactsheetsDataLayer">  
  <sql-query name="CleanAppendicesHierarchies">
    exec intf_CleanUpAppendixHierarchy
  </sql-query>
</hibernate-mapping>

Então eu nomeei o XML como: pococlassName.hbm.xml

Eu não sei o que ajudou, mas agora funcionou ....

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top