在设置了时间的默认值getdate(),新增一条数据仍为null。使用sql语句insert并无此问题,但使用linq to sql出现问题。
解决方案:http://msdn.microsoft.com/zh-cn/library/system.data.linq.mapping.columnattribute.isdbgenerated.aspx
[Column(Storage="_OrderID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)] public int OrderID { get { return this._OrderID; } set { if ((this._OrderID != value)) { this.OnOrderIDChanging(value); this.SendPropertyChanging(); this._OrderID = value; this.SendPropertyChanged("OrderID"); this.OnOrderIDChanged(); } } }
IsDbGenerated=true 为问题解决关键。