2012-02-02 6 views
6

プロジェクトでHQLクエリを使用する必要があり、エンティティがマップされていないというエラーがあります。Nhibernate 3.2のコードによるマッピングを使用すると、auto-imports = "true"を許可する方法はありますか?

nHibernate HQL - entity is not mappedまたはnHibernate HQL - entity is not mapped(または他のウェブサイト)を読むと、各クラスで自動インポート= "true"を使用する必要があることがわかります。

<hibernate-mapping 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
namespace="BusinessObjets" assembly="BusinessObjects" 
xmlns="urn:nhibernate-mapping-2.2" auto-import="true"> ... 

nhibernate 3.2でコードを使ってマッピングすると、この自動インポートはどのようにセットアップできますか?

私はマッピングをロードするためにそのコードを使用

var mapper = new ModelMapper(); 
mapper.AddMappings(typeof(Repository).Assembly.GetTypes()); 
return mapper.CompileMappingForAllExplicitlyAddedEntities(); 

よろしく

答えて

7

、あなたが直接マッピング・バイ・コードでそれを設定することはできませんが、CompileMappingForAllExplicitlyAddedEntitiesメソッドから返さHbmMappingオブジェクトを変更することができますConfigurationオブジェクトに渡す前に:

mapping.autoimport = true; 
+1

ありがとうございます。コードでマッピングしてすべてのものを見つけるのは難しい –

+0

NHibernateのコードを掘り下げて1時間保存しました - ありがとう! – Dav

関連する問題