在开发中遇到这样的问题,需要在一张表单里面同时输入多条数据,然后一次性提交到数据库中,而且数据的数目是不定的。就像是财务软件中对合同的处理:一张合同里面可能有很多的条款金额,每条条款在数据库中表现为一条数据。比如开始的时候先确定表单里面需要输入的记录数目,比如10条,然后生成一个界面让用户输入数据,输入完成以后在一次性的提交到数据库中。原先考虑用datalist来实现 可是datalist必须实现帮定数据集才能显示,所以好像不行。不知道大家有没有遇到过这样的情况。用c/s结构很好实现的,用b/s结构就有困难了。但是因为一定要用b/s结构 所以请大家帮帮忙 给点意见 谢谢!!分不够可以再加!
解决方案 »
- 50分求救 很急 请大家帮忙 关于ASP.NET
- datalist或者gridview可否在某行插入一个特殊样式
- 求asp.net做圆图,饼图
- 有谁用过FCKEditor,有个问题
- 求个SQL语句
- 急!在线等!请各位高手指点!如何把做好的ASP.NET程序进行发布!谢谢!
- 请教关于cache的问题::
- 关于取DataGrid第N行第M列的值的怪问题?
- 求救:请各们高手帮我考虑一下这个问题
- 请教一下,为什么服务器组件(例如:listbox )怎么只有 ListBox_SelectedIndexChanged 方法?
- 如何实现类似windows应用程序的主窗体?????
- 50分求 如何将 .aspx后缀名改为 .ok 但仍能正常运行?
再绑定datagrid是添加如下代码
for(int i=0;i< rowCount;i++)
{
DataRow dr;
dr=ds.Tables[0].NewRow();
dr["Id"]=0;
dr["colname1"]="";
dr["colname2"]="";
dr["colname3"]=DBNull.Value;
dr["colname4"]="";
ds.Tables[0].Rows.Add(dr);
}
<asp:datagrid id="dg1" runat="server" CssClass="dg" Width="980px" AutoGenerateColumns="False">
<Columns>
<asp:BoundColumn Visible="False" DataField="id" ReadOnly="True"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="按主要模块">
<HeaderStyle Width="250px"></HeaderStyle>
<ItemTemplate>
<asp:TextBox id=dg2txt1 runat="server" Width="70px" CssClass="textboxnb" Text='<%# DataBinder.Eval(Container.DataItem, "Mode_Name") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="进展评估">
<HeaderStyle Width="350px"></HeaderStyle>
<ItemTemplate>
<asp:TextBox id=dg2txt2 runat="server" Width="70px" CssClass="textboxnb" Text='<%# DataBinder.Eval(Container.DataItem, "Eval_Msg") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="存在主要问题">
<HeaderStyle Width="380px"></HeaderStyle>
<ItemTemplate>
<asp:TextBox id=dg2txt3 runat="server" Width="100px" CssClass="textboxnb" Text='<%# DataBinder.Eval(Container.DataItem, "Problem") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle CssClass="dgpager"></PagerStyle>
</asp:datagrid>
DataSet ds = new DataSet();
ds = getdata(); --这里换成你自己绑定代码
int rowCount=10;
for(int i=0;i< rowCount;i++)
{
DataRow dr;
dr=ds.Tables[0].NewRow();
dr["Id"]=0;
dr["Mode_Name"]="";
dr["Eval_Msg"]="";
dr["Problem"]="";
ds.Tables[0].Rows.Add(dr);
}
dg.DataSource=ds;
d2.DataBind();