我的問題是:
我在SQL Server中有一個表,它有一個NOT NULL的列,使用SEQUENCE作為默認值(NEXT VALUE FOR SeqDefa)。
我在SQL Server中有一個表,它有一個NOT NULL的列,使用SEQUENCE作為默認值(NEXT VALUE FOR SeqDefa)。 該列不是該表的PK。
我在ASP.NET中構建了一個Web表單,該表單在該表中做了一個CRUD,當我想在該列中發送一個空值來使用該表的默認值時,我得到了一個錯誤。這是因為LINQ說你不能向一個非空列發送一個空值
。
我怎樣才能解決這個問題?
我能否在我的表單中從LINQ獲得序列的下一個值? 除了將表列從非空值改為允許空值外,還有其他選擇嗎?
uj5u.com熱心網友回復:
如果你使用的是Entity Framework,那么你可能會在fluent API中尋找[DatabaseGenerated]屬性或.ValueGeneratedOnAdd()。
uj5u.com熱心網友回復:
如果你使用EF核心,你也可以看看價值轉換器。
撰寫一個簡單的轉換器,當給定值為null時,它將設定所選擇的默認值,或者如果你愿意的話,設定一些計算值。
由于這一點,你將不再需要在你的linq代碼中設定一些特殊的行為--只需在需要時正常使用null,值轉換器將處理其余的事情。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/310048.html
標籤:
上一篇:回圈瀏覽資料框架,以確定子組,并以獨特的識別符號標注。
下一篇:SQL從條件創建修改的記錄
