Nibernate Fluente e Nomeado Consultas
-
06-07-2019 - |
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
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