我有一個鏈接到ASP.NET成員資格架構中的另一個表的表。無法在字段爲Guid的情況下插入null(SqlDataSource中的對象)
問題是,ASP.NET表的所有PK都是uniqueidentifier,所以我也必須這樣做。當我添加一個SqlDatasource並調用它的Insert()方法時,出現以下錯誤:
無法將NULL值插入'DiscountCode'列'CreamDb.dbo.CustomInfo1'列;列不允許有空值。 INSERT失敗。 該聲明已被終止。
uniqueidentifier也被視爲一個對象(它的數據類型),但沒有Guid數據類型。我之前有過這個問題,但是架構要簡單得多,所以我可以修復它。
我該如何解決這個問題?如果我擺脫標記中的數據類型部分(所以只留下字段/參數名稱而不是數據類型的東西),我得到另一個錯誤,所以這是不可能的。
感謝
嗨, 我的意思是在標記(aspx)中沒有要使用的Guid數據類型。只有對象存在。您可以通過添加一個在表上執行CRUD的SQL數據源來嘗試此操作,然後檢查標記並查看參數的數據類型的智能感知。 – dotnetdev 2009-04-09 13:56:54
這不是C#的問題,它純粹是.NET。我不應該寫任何自定義代碼,因爲sqldatasource應該爲我處理繁重的工作。 – dotnetdev 2009-04-09 13:58:25
好吧,在我看來,SqlDataSource爲你做了很多繁重的工作,而且你只需編寫一小段代碼在創建新行時填寫正確的值。 (我對SqlDataSource沒有太多經驗,但應該很容易。) – 2009-04-09 14:05:56