我在处理 Detailsview InsertItemTemplate 时遇到问题。我正在关注 WROX 的 ASP.Net 4 for Beginners。
我有一个带有表 Employee(EmpId, Name, DoB, Sex, DeptId, Position) 的 dbase 我正在尝试使用 Detailsview 将值插入到该表中。
使用常规的详细信息视图,我可以插入所有值。它工作正常。但是当我将详细信息视图转换为模板时,出现了问题。
我做了什么?
- 在 Detailsview 的 Smart 标签上,我点击了 Edit Fields。删除除 EmpID 之外的所有可用字段,并从可用字段中添加模板字段。- 再次在 Detailsview 的 Smart Tag 上,单击 Edit Template 并在 DropDownList 中选择 InsertItemTemplate。- 使用工具箱中的标准组件,我为名称添加了文本框,并为其他字段添加了下拉列表。(我没有删除 EmpId,所以我不需要它)。- 这是标记视图的其余部分:
输入以下信息进行注册: 姓名:
出生日期:
性别:
部门编号:
职位:
- 这是用于详细信息视图的插入事件的 CS 文件背后的代码
protected void DetailsView1_ItemInserting1(object sender, DetailsViewInsertEventArgs e) { string id = System.Guid.NewGuid().ToString(); 文本框 txt_name = (TextBox)DetailsView1.FindControl("EmpId"); e.Values["EmpId"] = id;
DropDownList ddl_month = (DropDownList)DetailsView1.FindControl("DDL_Month");
string month = ddl_month.SelectedValue;
e.Values["DDL_Month"] = month;
DropDownList ddl_day = (DropDownList)DetailsView1.FindControl("DDL_Day");
string day = ddl_day.SelectedValue;
e.Values["DDL_Day"] = day;
DropDownList ddl_year = (DropDownList)DetailsView1.FindControl("DDL_Year");
string year = ddl_year.SelectedValue;
e.Values["DDL_Year"] = year;
DropDownList ddl_sex = (DropDownList)DetailsView1.FindControl("DDL_Sex");
string sex = ddl_sex.SelectedValue;
e.Values["DDL_Sex"] = sex;
DropDownList ddl_pos = (DropDownList)DetailsView1.FindControl("DDL_Pos");
string pos = ddl_pos.SelectedValue;
e.Values["DDL_Pos"] = pos;
DropDownList ddl_deptid = (DropDownList)DetailsView1.FindControl("DDL_DeptId");
string deptid = ddl_deptid.SelectedValue;
e.Values["DDL_DeptId"] = deptid;
}
-您能否建议我如何将下拉列表中的三个选定值组合为出生日期并将其添加到数据库中。
谢谢!!!