在我的應用我有TextBox
在綁定到LinqDataSource
像這樣一個FormView
:ASP.NET轉換無效的字符串爲Null
<asp:TextBox ID="MyTextBox" runat="server"
Text='<%# Bind("MyValue") %>' AutoPostBack="True"
ontextchanged="MyTextBox_TextChanged" />
protected void MyTextBox_TextChanged(object sender, EventArgs e)
{
MyFormView.UpdateItem(false);
}
這是內部的UpdatePanel
所以任何改變字段立即堅持。另外,MyValue
的值是decimal?
。這工作正常,除非我輸入任何字符串不能轉換爲十進制字段。在這種情況下,UpdateItem
調用拋出:
LinqDataSourceValidationException - 無法對類型的MyType一個或多個屬性。 asdf不是Decimal的有效值。
我明白這個問題,ASP.NET不知道如何從'asdf'轉換爲decimal ?.我希望它做的是將所有這些無效值轉換爲空。做這個的最好方式是什麼?