我們正在爲我們的Web應用程序創建演示模式。我們正在通過創建綁定到真實客戶端的新用戶來解決這個問題,顯示他們的所有數據,但是過濾某些字段是不可識別的(名稱,重要數字等等)。如何防止DataRow單元值被重置?
這裏奇怪的部分是數據被正確過濾了標準的「顯示一個」頁面,我打電話給第一個函數。當我嘗試在列表頁面上調用第二個時,過濾器不起作用。我已經介紹了函數,看來在第一個函數中,正在設置值,但是當foreach迭代到下一行時,它們將被重置爲原始值。
列表掩碼是應該被掩碼並在模型中靜態定義的列名稱列表。
public static void ApplyDemoMask(DataRow row, List<string> mask)
{
foreach (DataColumn column in row.Table.Columns)
{
if (mask.Contains(column.ColumnName))
{
if (column.ColumnName == "ClientName")
row[column] = "Demo Client";
// More fields follow...
}
}
}
public static void ApplyDemoMask(FindResponse response, List<string> mask)
{
foreach (DataRow row in response.ResultTable.Rows)
ApplyDemoMask(row, mask);
}
我感謝任何可以給予的幫助。出於某種原因,當我涉及到System.Data時,我有點笨拙。
編輯:如果它有幫助,當我的調試器着陸在第二個函數的「}」時,row [「ClientName」]就像它應該是「Demo Client」一樣,但是response.ResultTable.Rows [0] [ 「ClientName」]是「原始客戶端」。奇怪的!
編輯:綁定到我的網格時,我必須指定列名稱。首先,我們使用ASP.NET MVC,並使用我們編寫的自定義控件來幫助我們從ASP.NET過渡。其次,我們有很多模板字段。對於這個Web應用程序共享代碼和一個非常大的WinForms業務線應用程序,不能有任何巨大而徹底的改變。
您是否將數據集綁定到控件。如果是刪除綁定並以編程方式填充控件 – Lonzo 2009-02-11 06:34:09
這將是一個比這個權證更大的更改。理想情況下,我想修改我的數據並完成它,但我會盡量作爲最後的手段。 – 2009-02-11 06:43:07