4

クラスをマップするためにNHibernateのコードによるマッピングを使用しています。

NHibernate の構成をデバッグするために、NHibernate に渡された設定を正確に確認する必要がある場合があり、コードごとにマッピングをデバッグするのは非常に困難です。

手で入力したかのように、生成された HbmMapping を Xml ファイルに戻す方法はありますか?

これは、問題が私のマッピングにあるのかどうかを診断するのに大いに役立ちます!

4

1 に答える 1

7

オプション1

これにより、XML が BIN フォルダーに書き込まれ、IIS プールがリサイクルされることに注意してください。一度実行してから、WriteAllXmlMapping行をコメントアウトしてください。

var mapper = new ModelMapper();
mapper.AddMappings(typeof(CmsMeta).Assembly.GetTypes());

//This will write all the XML into the bin/mappings folder
mapper.CompileMappingForEachExplicitlyAddedEntity().WriteAllXmlMapping();

オプション 2

これにより、ブレークポイントを追加できる単一の大きな XML ファイルが得られます。

var mapper = new ModelMapper();
mapper.AddMappings(typeof(CmsMeta).Assembly.GetTypes());
var mapping = mapper.CompileMappingForAllExplicitlyAddedEntities();

//you could add a breakpoint here! 
var mappingXml = mapping.AsString();

ソースは以前書いたブログ記事から。

于 2012-05-15T13:55:57.727 に答える