2011-06-03 31 views
0

我特林更新記錄,並要排除從更新一列,我有這個字段被填充了GETDATE()在SQL中是默認值,所以當更新發生我想離開這個領域,因爲它是MVC2 - 排除日期和時間列從更新方法

[ScaffoldColumn(false)] 

    [Column] public DateTime RegisteredDate { get; set; } 
同時使用來自dataannotaions ScaffoldColumnFalse和HiddenInput(DisplayValue = FALSE),但是當我嘗試保存更改時引發的錯誤

我用盡

sqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM. 

據我瞭解,這是由於拋出一個空v ALUE被傳遞到RegisterdDate場,

伊夫使用綁定在ActionResult的存根排除無濟於事

public ActionResult Edit([Bind(Exclude = "RegisteredDate")] Customer customer) 

任何關於我錯了這裏,其中的任何想法也試過嗎?

親切的問候

利亞姆

回答

0

看一看史蒂夫Sandersons博客,Partial Validation in ASP.NET MVC 2。他的方法是隻驗證來自視圖的傳入值。這可能適用於你的情況。

+0

調試時,我可以看到,customersTable.Context.SubmitChanges運行時被傳遞從客戶對象的所有字段的空值,所以我想這或許可以解釋爲什麼錯誤是發生試過這無濟於事,這是通過對日期字段{01/01/0001 00:00:00 – liam 2011-06-03 15:21:31

+0

固定我的升級方法,但是這個錯誤還是存在的,我已經使用史蒂夫sandersons ValidateOnlyIncomingAttributes但是這個值{01/01/0001 00:00:00}仍在傳遞給註冊日期? – liam 2011-06-03 15:37:05

+0

你可以發佈一個控制器動作的例子(編輯你的文章)嗎? – gnome 2011-06-03 17:23:42