スキーマが初期化中のオブジェクトと一致するかどうかを確認しようとしています。
単にクラス名を反映する以外に、クラスの TableName を取得する方法はありますか?
明示的な TableNames を持つクラスを使用しています
編集:ジョーのソリューションを使用して、テーブル名を指定しない場合を追加しました。おそらく制約を使用できます
public string find_table_name(object obj)
{
object[] attribs = obj.GetType().GetCustomAttributes(typeof(Castle.ActiveRecord.ActiveRecordAttribute), false);
if (attribs != null)
{
ActiveRecordAttribute attrib = (Castle.ActiveRecord.ActiveRecordAttribute) attribs[0];
if (attrib.Table != null)
return attrib.Table;
return obj.GetType().Name;
}
return null;
}