DataSet中自定义表和对表操作

有时候遇到对多报表进行操作,采用DataSet是个不错的选择。建立一个虚拟表,将所有数据填到里面,有哪个就提取哪个,很方便。

//编辑部分
[AjaxMethod()]
public void Edit(string id1,int id2)
{
Window1.Title = "编辑";
Window1.Show();
Session["id1"] = id1;
Session["id2"] = id2.ToString();
string f3= string.Format("SELECT * FROM Classes INNER JOIN Students ON Classes.class_id = Students.stu_class_id INNER JOIN Course ON Classes.class_id = Course.cou_grade_id INNER JOIN Stscor ON Students.stu_id = Stscor.stc_stu_id AND Course.cou_id = Stscor.stc_courseid where stc_stu_id='{0}' and stc_courseid={1} ", id1,id2);
SqlDataAdapter da = new SqlDataAdapter(f3, ConnectionString);
DataSet ds = new DataSet();
da.Fill(ds, "jgk");

//"jgk"便是多表的虚拟表,用来暂时存放数据的。存放里四个表的数据
TextField21.Text = ds.Tables[0].Rows[0]["stc_stu_id"].ToString();

//["stc_stu_id"]为数据库中学生表里的字段,一下的字段以此类推。
TextField22.Text = ds.Tables[0].Rows[0]["stu_name"].ToString();
TextField23.Text = ds.Tables[0].Rows[0]["stu_class_id"].ToString();

//获取数据集中虚拟表的第一行ds.Tables[0].Rows[0],要显示的字段名:"stu_class_id".
TextField24.Text = ds.Tables[0].Rows[0]["stc_courseid"].ToString();
TextField25.Text = ds.Tables[0].Rows[0]["cou_name"].ToString();
TextField26.Text = ds.Tables[0].Rows[0]["stc_score"].ToString();
TextField27.Text = ds.Tables[0].Rows[0]["stc_else4"].ToString();

}

前台界面显示:

<%--编辑页面部分--%>


<ext:Window ID="Window1" runat="server" Collapsible="true" Icon="Application" Title="编辑" Closable="false" Modal="true" AnimateTarget="Add" AutoHeight="true" Width="780px" ShowOnLoad="false">
<Body>
<ext:FormPanel ID="FormPanel1" runat="server" BodyStyle="padding:5px;" ButtonAlign="Right"
Frame="true" LabelAlign="Left" >
<Body>
<ext:Panel ID="Panel1" runat="server" AutoHeight="true" >
<Body>
<ext:ColumnLayout ID="columnlayout1" runat="server">
<ext:LayoutColumn ColumnWidth="0.33">
<ext:Panel runat="server" ID="panel2" AutoHeight="true">
<Body>
<ext:FormLayout ID="FormLayout1" runat="server" LabelWidth="60" >

<ext:Anchor>
<ext:TextField ID="TextField21" runat="server" EnableKeyEvents="true" FieldLabel="学号" AllowBlank="true" ReadOnly="true">
</ext:TextField>
</ext:Anchor>
<ext:Anchor>
<ext:TextField ID="TextField22" runat="server" EnableKeyEvents="true" FieldLabel="姓名" AllowBlank="true" ReadOnly="true">
</ext:TextField>
</ext:Anchor>

</ext:FormLayout>
</Body>
</ext:Panel>
</ext:LayoutColumn>
<ext:LayoutColumn ColumnWidth="0.33">
<ext:Panel runat="server" ID="panel4" AutoHeight="true">
<Body>
<ext:FormLayout ID="FormLayout3" runat="server" LabelWidth="90" >
<ext:Anchor>
<ext:TextField ID="TextField23" runat="server" DataIndex="5" FieldLabel="班级" ReadOnly="true">
</ext:TextField>
</ext:Anchor>
<ext:Anchor>
<ext:TextField ID="TextField24" runat="server" DataIndex="5" FieldLabel="课程ID" ReadOnly="true">
</ext:TextField>
</ext:Anchor>
<ext:Anchor>
<ext:TextField ID="TextField25" runat="server" FieldLabel="课程名称">
</ext:TextField>
</ext:Anchor>
</ext:FormLayout>
</Body>
</ext:Panel>
</ext:LayoutColumn>
<ext:LayoutColumn ColumnWidth="0.33">
<ext:Panel runat="server" ID="panel9" AutoHeight="true">
<Body>
<ext:FormLayout ID="FormLayout6" runat="server" LabelWidth="80">

<ext:Anchor>
<ext:TextField ID="TextField26" runat="server" FieldLabel="所得分数">
</ext:TextField>
</ext:Anchor>
<ext:Anchor>
<ext:TextField ID="TextField27" runat="server" FieldLabel="考试时间">
</ext:TextField>
</ext:Anchor>
<ext:Anchor>
<ext:Panel ID="Panel10" runat="server">
<Body>
<ext:TableLayout ID="TableLayout3" runat="server" Columns="4">
<ext:Cell>
<ext:Panel ID="Panel11" runat="server" Width="50"></ext:Panel>
</ext:Cell>
<ext:Cell>
<ext:Button ID="Button2" Width ="100" runat="server" Icon="Disk" Text="提交">
<AjaxEvents>
<Click OnEvent="tijiaobianji">
<EventMask ShowMask="true" Msg="正在搜索..."></EventMask>
</Click>
</AjaxEvents>
</ext:Button>
</ext:Cell>
<ext:Cell>
<ext:Panel ID="Panel13" runat="server" Width="50"></ext:Panel>
</ext:Cell>
<ext:Cell>
<ext:Button ID="Button3" runat="server" Icon="Cancel" Text="取消">
<AjaxEvents>
<Click OnEvent="quxiaobianji">
<EventMask ShowMask="true" Msg="请稍等..."></EventMask>
</Click>
</AjaxEvents>
</ext:Button>
</ext:Cell>
</ext:TableLayout>
</Body>
</ext:Panel>
</ext:Anchor>
</ext:FormLayout>
</Body>
</ext:Panel>
</ext:LayoutColumn>
</ext:ColumnLayout>
</Body>

</ext:Panel>

</Body>

</ext:FormPanel>
</Body>
</ext:Window>

点击编辑按钮后如图:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值