2010-09-13 39 views
0

這是可能的流利nhibernate有一個表的多個映射?讓我們假設我有一個用戶表。NHibernate中的多個ClassMaps類

有一次,我希望它適用於文件UserMap1.cs中,有時我寧願映射UserMap2.cs。

我不需要在應用程序運行時切換配置。我只需要在開始時選擇適當的一個。

在此先感謝:-)

回答

0

這可能是一個黑客,但你可能把你的兩個映射到不同的命名空間。然後,您可以根據您的需要添加來自任一名稱空間或其他名稱空間的映射。

0

你使用的是流利NHibernate,所以你很可能使用Mappings.FluentMappings對象。我通常調用AddAssemblyFrom(在包含映射的程序集中提供一個類型)。您可能需要調用Add或Add(Type type)方法以單獨添加它們。我的想法是使用MEF來爲您的ClassMap子類添加屬性,並在選擇的情況下添加元數據以確定注入哪些元數據。