我正在开发一个我继承的应用程序,并试图找出发生了什么。有一个使用ObjectDataSource的gridview。 ObjectDataSource查看数据集以获取假日数据(假日名称和日期),并且gridview显示此信息。用户应该能够单击编辑并编辑与假日相关联的日期。 请注意,Holiday是数据库表和数据集中的主键。出于某些恼人的原因,当我在任何行上单击编辑时,我可以编辑和更新日期,它将始终只更新表中第一行的日期与用户尝试更新的假日无关。我已经复制了下面的更新代码。这里出了什么问题?
[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 :(得分:0)
决定捣毁这件事。改为使用实体模型,模型类和列表视图,并重建项目基础结构。效果很好!我不知道之前的开发人员试图通过网格视图完成什么,但是从我研究的内容来看,它们非常难以正常工作。