0
我正在爲ConfORM編寫我的第一個自定義列名稱應用程序。在ConfORM中編寫自定義應用程序時檢查現有映射
如何檢查另一列是否已經映射具有相同的映射名稱?
這是我到目前爲止有:
public class MyColumnNameApplier : IPatternApplier<PropertyPath, IPropertyMapper>
{
public bool Match(PropertyPath subject)
{
return (subject.LocalMember != null);
}
public void Apply(PropertyPath subject, IPropertyMapper applyTo)
{
string shortColumnName = ToOracleName(subject);
// How do I check if the short columnName already exists?
applyTo.Column(cm => cm.Name(shortColumnName));
}
private string ToOracleName(PropertyPath subject)
{
...
}
}
}
我需要縮短生成的列名少於30個字符以配合Oracle的30個字符的限制。因爲我縮短了列名,所以有可能相同的列名可能會生成兩個不同的屬性。我想知道重複映射何時發生。
如果我不處理這種情況,ConfORM/NHibernate允許兩個不同的屬性'共享'相同的列名 - 這顯然會給我造成一個問題。