Int
フィールドは(他のDBMSおよびプログラミング言語との互換性のために)データベースに値を格納するために使用されBoolean
ます。データベースで最初に生成されたEntityFrameworkモデル(デフォルトでInt
フィールドをマップする)をカスタマイズして、タイプオンのInt32
使用中に生成されたSQLクエリで1/0( "true" / "false"ではなく)を使用するようにするにはどうすればよいですか?Boolean
アプリケーション側?
質問する
1664 次
1 に答える
3
回避策の 1 つは、DB にマップされていないモデルで別のブール型プロパティを使用することです。そして、そのプロパティ set メソッドで、整数値を int プロパティに設定できます。
//EF Generated/Poco Do not Modify
public partial MyTable
{
public int MyField { get; set; }
}
これらは部分クラスであるため、別のファイルを作成します
public partial MyTable
{
public bool MyBoolField
{
get
{
return this.MyField != 0;
}
set
{
if (value)
{
this.MyField = 1;
}
else
{
this.MyField = 0;
}
}
}
}
于 2012-11-20T06:15:28.503 に答える