ASP.NET将存储过程中的数据添加到自定义表中
我的问题主要是: 我已连接到SQL Server数据库。我有一个类可以访问这个数据库并返回一个DataTable 我想使用从存储过程中获取的数据表在HTML中生成一个引导表 基本上,我想以这样的方式结束:ASP.NET将存储过程中的数据添加到自定义表中,asp.net,sql-server,vb.net,Asp.net,Sql Server,Vb.net,我的问题主要是: 我已连接到SQL Server数据库。我有一个类可以访问这个数据库并返回一个DataTable 我想使用从存储过程中获取的数据表在HTML中生成一个引导表 基本上,我想以这样的方式结束: Dim table as DataTable //(let's say this already has all the data I need.) Dim returnString as String = "<table class=""table table-striped""&g
Dim table as DataTable //(let's say this already has all the data I need.)
Dim returnString as String = "<table class=""table table-striped"">"
returnString = "<thead><tr>"
for i = 0 to DataTable.Columns.count - 1
returnString = returnString + "<th>" + DataTable.columns(i).HeaderText + "</th>"
Next
returnString = returnString + "</thead><tbody>"
for i = 0 to DataTable.rows.count - 1
returnString = returnString + "<tr>"
for j = 0 to DataTable.columns.count - 1
returnString = returnString + "<td>" + DataTable.rows(i)(j).value.ToString() + "</td>"
Next
returnString = returnString + "</tr>"
Next
returnString = returnString + "</tbody></table>"
Dim table as DataTable//(假设这已经包含了我需要的所有数据。)
Dim returnString as String=“”
returnString=“”
对于i=0到DataTable.Columns.count-1
returnString=returnString+“”+DataTable.columns(i).HeaderText+“”
下一个
returnString=returnString+“”
对于i=0到DataTable.rows.count-1
returnString=returnString+“”
对于j=0到DataTable.columns.count-1
returnString=returnString+“”+DataTable.rows(i)(j).value.ToString()+“”
下一个
returnString=returnString+“”
下一个
returnString=returnString+“”
我知道我做的工作比我需要的要多。但我不知道如何在ASP.NET中实现这一点(我以前从未在这种环境中工作过),所以我有点不知所措。如何将“returnString”变量插入标记中?我认为了解如何实现这一点将有助于我全面理解ASP.NET体系结构。假设您在aspx页面的代码隐藏页面中编写此代码,您希望在aspx页面上放置一个,如上所述构建字符串,并将文本控件的文本属性设置为生成的文本
但是,如果您刚刚开始使用asp.net,并且您的环境允许,我强烈建议您研究asp.net MVC,因为razor语法对于生成引导内容更为友好。假设您正在aspx页面的代码隐藏页面中编写此代码,您可能希望在aspx页面上放置一个,如上所述构建字符串,并将文本控件的Text属性设置为生成的文本
但是,如果您刚刚开始使用asp.net,并且您的环境允许,我强烈建议您研究asp.net MVC,因为razor语法对于生成引导内容更为友好。假设您正在aspx页面的代码隐藏页面中编写此代码,您可能希望在aspx页面上放置一个,如上所述构建字符串,并将文本控件的Text属性设置为生成的文本
但是,如果您刚刚开始使用asp.net,并且您的环境允许,我强烈建议您研究asp.net MVC,因为razor语法对于生成引导内容更为友好。假设您正在aspx页面的代码隐藏页面中编写此代码,您可能希望在aspx页面上放置一个,如上所述构建字符串,并将文本控件的Text属性设置为生成的文本
但是,如果您刚刚开始使用asp.net,并且您的环境允许,我强烈建议您研究asp.net MVC,因为razor语法对于生成引导内容更加友好。如DavidB所说,您可以使用这样的转发器: HTML
<table border="0" cellpadding="0" cellspacing="0" class="Listing">
<tr class="Header">
<td>
Rebate Run #
</td>
<td>
Run Date
</td>
<td>
Transaction
</td>
<td style="text-align: right">
Frames Amount
</td>
<td style="text-align: right">
Cash Amount
</td>
<td></td>
</tr>
<asp:Repeater ID="rptRemittance" runat="server">
<ItemTemplate>
<tr class="Detail">
<td align="center">
<%# DataBinder.Eval(Container.DataItem, "RebatePaymentRunID")%>
</td>
<td align="center">
<%# FormatDate(DataBinder.Eval(Container.DataItem, "PaymentRunDate"))%>
</td>
<td align="center">
<%# DataBinder.Eval(Container.DataItem, "Transactions")%>
</td>
<td align="right">
R<%# FormatNumber(DataBinder.Eval(Container.DataItem, "FramesAmount"), 2)%>
</td>
<td align="right">
R<%# FormatNumber(DataBinder.Eval(Container.DataItem, "CashAmount"), 2)%>
</td>
<td>
<asp:LinkButton ID="DownloadLink" runat="server" CommandName="Download" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "RebatePaymentRunID") %>'>
<img src="../../images/icons/pdf.gif" alt="Download invoice"/>
</asp:LinkButton>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
正如DavidB所说,您可以使用这样的中继器: HTML
<table border="0" cellpadding="0" cellspacing="0" class="Listing">
<tr class="Header">
<td>
Rebate Run #
</td>
<td>
Run Date
</td>
<td>
Transaction
</td>
<td style="text-align: right">
Frames Amount
</td>
<td style="text-align: right">
Cash Amount
</td>
<td></td>
</tr>
<asp:Repeater ID="rptRemittance" runat="server">
<ItemTemplate>
<tr class="Detail">
<td align="center">
<%# DataBinder.Eval(Container.DataItem, "RebatePaymentRunID")%>
</td>
<td align="center">
<%# FormatDate(DataBinder.Eval(Container.DataItem, "PaymentRunDate"))%>
</td>
<td align="center">
<%# DataBinder.Eval(Container.DataItem, "Transactions")%>
</td>
<td align="right">
R<%# FormatNumber(DataBinder.Eval(Container.DataItem, "FramesAmount"), 2)%>
</td>
<td align="right">
R<%# FormatNumber(DataBinder.Eval(Container.DataItem, "CashAmount"), 2)%>
</td>
<td>
<asp:LinkButton ID="DownloadLink" runat="server" CommandName="Download" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "RebatePaymentRunID") %>'>
<img src="../../images/icons/pdf.gif" alt="Download invoice"/>
</asp:LinkButton>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
正如DavidB所说,您可以使用这样的中继器: HTML
<table border="0" cellpadding="0" cellspacing="0" class="Listing">
<tr class="Header">
<td>
Rebate Run #
</td>
<td>
Run Date
</td>
<td>
Transaction
</td>
<td style="text-align: right">
Frames Amount
</td>
<td style="text-align: right">
Cash Amount
</td>
<td></td>
</tr>
<asp:Repeater ID="rptRemittance" runat="server">
<ItemTemplate>
<tr class="Detail">
<td align="center">
<%# DataBinder.Eval(Container.DataItem, "RebatePaymentRunID")%>
</td>
<td align="center">
<%# FormatDate(DataBinder.Eval(Container.DataItem, "PaymentRunDate"))%>
</td>
<td align="center">
<%# DataBinder.Eval(Container.DataItem, "Transactions")%>
</td>
<td align="right">
R<%# FormatNumber(DataBinder.Eval(Container.DataItem, "FramesAmount"), 2)%>
</td>
<td align="right">
R<%# FormatNumber(DataBinder.Eval(Container.DataItem, "CashAmount"), 2)%>
</td>
<td>
<asp:LinkButton ID="DownloadLink" runat="server" CommandName="Download" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "RebatePaymentRunID") %>'>
<img src="../../images/icons/pdf.gif" alt="Download invoice"/>
</asp:LinkButton>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
正如DavidB所说,您可以使用这样的中继器: HTML
<table border="0" cellpadding="0" cellspacing="0" class="Listing">
<tr class="Header">
<td>
Rebate Run #
</td>
<td>
Run Date
</td>
<td>
Transaction
</td>
<td style="text-align: right">
Frames Amount
</td>
<td style="text-align: right">
Cash Amount
</td>
<td></td>
</tr>
<asp:Repeater ID="rptRemittance" runat="server">
<ItemTemplate>
<tr class="Detail">
<td align="center">
<%# DataBinder.Eval(Container.DataItem, "RebatePaymentRunID")%>
</td>
<td align="center">
<%# FormatDate(DataBinder.Eval(Container.DataItem, "PaymentRunDate"))%>
</td>
<td align="center">
<%# DataBinder.Eval(Container.DataItem, "Transactions")%>
</td>
<td align="right">
R<%# FormatNumber(DataBinder.Eval(Container.DataItem, "FramesAmount"), 2)%>
</td>
<td align="right">
R<%# FormatNumber(DataBinder.Eval(Container.DataItem, "CashAmount"), 2)%>
</td>
<td>
<asp:LinkButton ID="DownloadLink" runat="server" CommandName="Download" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "RebatePaymentRunID") %>'>
<img src="../../images/icons/pdf.gif" alt="Download invoice"/>
</asp:LinkButton>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
这对于repeater控件来说是一个理想的工作-但是如果您在字符串中设置了表,那么将returnString绑定到aspx页面上的文字控件的值,这对于repeater控件来说是一个理想的工作-但是如果您在字符串中设置了表,那么将returnString绑定到aspx页面上的文字控件的值页面这对于repeater控件来说是一个理想的工作-但是如果您在字符串中设置了表,那么将returnString绑定到aspx页面上的文字控件的值,这对于repeater控件来说是一个理想的工作-但是如果您在字符串中设置了表,那么将returnString绑定到aspx页面上的文字控件的值谢谢你指出了正确的方向。开始了一个MVC教程,看起来我需要做的事情会容易得多。谢谢你在正确的方向上提出的观点。开始了一个MVC教程,看起来我需要做的事情会容易得多。谢谢你在正确的方向上提出的观点。开始了一个MVC教程,看起来我需要做的事情会容易得多。谢谢你在正确的方向上提出的观点。开始了一个MVC教程,看起来我需要做的事情会容易得多。