EF 5.0.0、VS 2012、および .NET 4.5 を使用して、既存の SQL Server 2012 データベースから新しい ADO.NET エンティティ データ モデルを追加すると、生成されたコードは null 許容と null 非許容の varchar を区別しません。たとえば、私のデータベースでは TTITLE は null 値を許容しませんが、CITY は null 値を許容しますが、生成されたコードでは次のようになります。これにより、検証の問題が発生します。[Required]
TITLE プロパティは、デフォルトで EF によって属性によって装飾されるべきではありませんか? 生成されたものは、null 許容と null 非許容の int を正確に区別します。
public partial class AWARD
{
public int ID { get; set; }
public int PERSON_ID { get; set; }
public string TITLE { get; set; }
public string CITY { get; set; }
public Nullable<int> STATE_PROVINCE { get; set; }
public Nullable<int> COUNTRY { get; set; }
public string ORGANIZATION { get; set; }
public int YEAR { get; set; }
public Nullable<int> MONTH { get; set; }
public virtual PERSON PERSON { get; set; }
public virtual V_COUNTRY V_COUNTRY { get; set; }
public virtual V_USA_STATE V_USA_STATE { get; set; }
}