NHibernateの初心者で、マッピングにFluentを使用しようとしています。私のエンティティクラス名は、マッピングされなければならないデータベーステーブル名とは異なります。 ClassMap<>
から派生したマッピングクラスを使用していますが、テーブル名を指定することはできません。TableName
からClassMap
までは読み取り専用です。Fluent NHibernate ClassMapクラスでテーブル名を指定する方法は?
ありがとうございました。
NHibernateの初心者で、マッピングにFluentを使用しようとしています。私のエンティティクラス名は、マッピングされなければならないデータベーステーブル名とは異なります。 ClassMap<>
から派生したマッピングクラスを使用していますが、テーブル名を指定することはできません。TableName
からClassMap
までは読み取り専用です。Fluent NHibernate ClassMapクラスでテーブル名を指定する方法は?
ありがとうございました。
代わりにを使用してください。
このように機能しますか?
public class UserAccountMap : ClassMap<UserAccount> {
public UserAccountMap() {
Table("User");
Id(x => x.UserID, "UserID").GeneratedBy.Identity();
Map(x => x.FirstName, "FirstName").Length(50)
.Not.Nullable();
Map(x => x.LastName, "LastName").Length(50)
.Not.Nullable();
}
}
ユーザーは予約済みのキーワードです。 'で囲みます。 http://stackoverflow.com/a/2879630/475882 – jaxxbo
上記の例は正しい方向に私を導いてくれます。これは私のために働いた。私のクラス名は "Party"で、テーブル名は "prty.Party"です。
public class PartyMap : ClassMap<Party>
{
public PartyMap()
{
Table("prty.Party");
Id(x => x.PartyID);
Map(x => x.PartyTypeLID);
Map(x => x.OrganizationTypeLID);
Map(x => x.PreferredContactMethodLID);
Map(x => x.PrimaryLanguageLID);
Map(x => x.PartyVID);
Map(x => x.BeginDate);
Map(x => x.EndDate);
Map(x => x.RowDescriptor);
Map(x => x.RowModifiedDate);
Map(x => x.RowModifiedBy);
Map(x => x.RowCreatedDate);
Map(x => x.RowCreatedBy);
}
}
この地図呼び出しをすべてスキップする方法がありますか? –
これは現在です。 2009年9月現在 テーブル( "table_name"); – Chin