从数据库格式问题创建的C#表
我有一些代码从数据库中获取一些值,然后通过以下代码将其修改为html表从数据库格式问题创建的C#表,c#,C#,我有一些代码从数据库中获取一些值,然后通过以下代码将其修改为html表 if (!this.IsPostBack) { DataTable dt = Database.GetData(); StringBuilder html = new StringBuilder(); html.Append("<table border = '1'>"); html.Append("<tr&g
if (!this.IsPostBack) {
DataTable dt = Database.GetData();
StringBuilder html = new StringBuilder();
html.Append("<table border = '1'>");
html.Append("<tr>");
foreach(DataColumn column in dt.Columns){
html.Append("<th>");
html.Append(column.ColumnName);
html.Append("</th>");
}
html.Append("</tr>");
foreach (DataRow row in dt.Rows) {
html.Append("<tr>");
foreach (DataColumn column in dt.Columns) {
html.Append("<td>");
html.Append(row[column.ColumnName]);
html.Append("</td>");
}
html.Append("</tr>");
}
html.Append("</table>");
Datatable.Controls.Add(new Literal { Text = html.ToString() });
}
if(!this.IsPostBack){
DataTable dt=Database.GetData();
StringBuilder html=新的StringBuilder();
html.Append(“”);
html.Append(“”);
foreach(dt.Columns中的DataColumn列){
html.Append(“”);
Append(column.ColumnName);
html.Append(“”);
}
html.Append(“”);
foreach(数据行中的数据行){
html.Append(“”);
foreach(dt.Columns中的DataColumn列){
html.Append(“”);
Append(行[column.ColumnName]);
html.Append(“”);
}
html.Append(“”);
}
html.Append(“”);
Datatable.Controls.Add(新文本{Text=html.ToString()});
}
问题在于,在运行时,代码会在大约15个浏览器页面的一行中抛出,而不是在列下抛出
有什么建议吗?您的代码目前不会作为表输出,因为您的
表
标记和边框
属性之间缺少空格
如果您希望呈现一个表,使其在浏览器解释时不是有效的表标记,则它应该是
而不是
此外,如果您希望将代码呈现为HTML,则应将其输出为“原始”HTML,否则它将被视为文本,这在我看来就是如此。有razor之类的引擎来呈现网页…您的HTML可能不会为客户端进行HTML编码。您需要一个空间,它应该是
而不是它应该以您看到excel工作表的基本方式列和格式,例如,发送到浏览器的实际HTML页面源是什么?