c# - 如何从使用匿名变量创建的对象中获取数据
问题描述
我的循环和对象有问题,我不知道如何获取数据。我需要从 MySQL 获取值并创建一个 HTML 表:
[![在此处输入图像描述][1]][1]
他们的表格将是多个表格,并且应该按日期分组。这里我遇到了分组、数据采集和渲染的问题。谁能告诉我什么是错的?
```
private const int cols = 3;
private string header;
private string title;
private StringBuilder body=new StringBuilder(string.Empty);
public void PrintRes()
{
var ID =Cursor.GetFieldValue<int>("ID");
var cmdRec = SqlClient.Main.CreateCommand(@"
select r.res, r.ID,r.emp, kdk.FIO, cert.date from certres r
left join kdk on n_kdk=r.EMPL
left join cert on cert.id=r.ID
where r.ID=@ID"
, new SqlParam("ID", ID)).ExecObjects(new { res = 0, fio = string.Empty, date=DateTime.MinValue});
foreach (var c in cmdRec.GroupBy(x=>x.date))
{
for (int i = 0; i < cmdRec.Select(x=>x.date==c.Key.Date).Count(); i++)
{
//var titleHead= string.Format("<tr>{0}</tr>", c.Key);
}
}
}
public void CreateHtml(int cols,string[] captions)
{
cols = captions.Length;
StringBuilder sb=new StringBuilder(string.Empty);
foreach (var c in captions)
{
sb.AppendFormat("<th>{0}</th>", c);
}
var title=string.Format("№", "FIO","Result");
header = string.Format("<thead><tr>{0}</tr></thead>", sb.ToString());
}
public void AddRows(object[] values)
{
body.Append("<tr>");
for (int i = 0; i < values.Length; i++)
{
body.AppendFormat("<td>{0}</td>", values[i].ToString());
}
for (int i = 0; i < cols; i++)
{
body.Append("<tr></tr>");
}
body.Append("</tr>");
}
public string Html()
{
return string.Format("<table>{0}</table><table style=\"boarder:solid 1px;\">{1}<tbody>{2}</tbody></table>",
title,header,body.ToString());
}
[1]: https://i.stack.imgur.com/xvwG9.png
解决方案
推荐阅读
- apache-camel - 无法自动创建组件:restlet
- php - vlucas/valitron PHP 验证器。如何使用规则数组添加自定义消息?
- java - Java 和 Google API:连接到谷歌邮件并在我的谷歌日历中添加事件?
- java - 如何在 java 中读取二进制 .Chn 格式文件?
- python - 查找日期是否存在的函数,如果存在则打印该行和数据框的下 6 行
- performance - 在 Elasticsearch 中通过 _id 查询路由获取以提高性能?
- angular - tsconfig 路径“ScssError:找不到要导入的样式表”
- android - 失败 [INSTALL_FAILED_INVALID_APK:会话:766972672。/data/app/vmdl766972672.tmp 中没有暂存的包]
- r - 删除一系列重复值
- html - CSS - 添加菜单图标会导致网站布局出现问题