我正在尝试创建一个应用程序范围的设置表:
Settings
Name | Value
--------------------------
Config1 | "A text string"
Config2 | "true"
Config3 | "100"
名称和值都是 varchar 类型。我试图在 Settings 类中以某种方式将其映射到 Dictionary 对象:
public class ApplicationSettings
{
protected virtual void IDictionary Settings { get; set; }
public string Config1 {
get { return Settings["Config1"]; }
set { Settings["Config1"] = value; }
}
// etc
}
注意:这个先前的问题是我能找到的最接近我正在尝试做的事情,但它没有显示使用的 NHibernate 映射。
我知道 NHibernate 有一个 <map/> 标签,因此我可以将这样的字典附加到另一个映射对象(例如映射到 User 类的 UserSettings 字典)。但就我而言,这些是全局设置,因此没有要附加的父对象。
谁能解释这种情况下的映射是什么样的,或者如果不能使用 <map/> 标记,可以通过其他方式(条件查询、命名 SQL 查询)从这种类型的表中加载和保存?