2017-05-21 55 views
0

我正在研究一個我繼承的應用程序,並試圖找出發生了什麼。有一個使用ObjectDataSource的gridview。 ObjectDataSource查看數據集以獲取假日數據(假日名稱和日期),gridview顯示此數據。用戶應該能夠點擊編輯並編輯與假日相關的日期。 請注意,假日是數據庫表和數據集中的主鍵。出於一些令人討厭的原因,當我點擊任何行上的編輯時,我可以編輯和更新日期,並且它始終只會更新表中的第一行,該日期與用戶嘗試更新的假日不相關。我已經在下面複製了我的更新代碼。這裏出了什麼問題?Gridview問題 - 更新編輯/更新中的錯誤值

[System.ComponentModel.DataObjectMethod 
    (System.ComponentModel.DataObjectMethodType.Update, true)] 
public bool UpdateHolidays(string Original_Holiday, DateTime Original_Date) 
{ 
    GetHolidayData.HolidaysDataTable holidays = Adapter.GetData(); 
    if (holidays.Count == 0) 
     // no matching record found, return false 
     return false; 
    GetHolidayData.HolidaysRow holiday = holidays[0]; 

    if (Original_Date == null) holiday.SetDateNull(); 
    else holiday.Date = Original_Date.Date; 

    int rowsAffected = Adapter.Update(holiday); 
    return rowsAffected == 1; 
} 

回答

0

決定垃圾這個東西。改爲使用實體模型,模型類和列表視圖並重建項目基礎結構。很棒!我不知道以前的開發人員是如何通過網格視圖來完成的,但是從我所研究的內容來看,他們非常難以正確工作。