c# - 从数据库查询中填充类对象的更好方法?
问题描述
目前我正在使用 SqlCommands 来运行存储过程,我将 ExecuteReader 并运行一段时间 .read,将每个字段分配给一个对象,然后将该对象添加到一个列表中。到目前为止,当存储过程返回几个字段时,这工作得很好,但现在我需要返回一个包含 20 多个字段的完整数据库行。我应该这样做有更好的方法吗?
这是我当前如何使用 SqlCommand 对象并填充类的示例。
private IEnumerable<DigitalQueue> GetUncheckedQueues()
{
var cmd = new SqlCommand
{
CommandTimeout = 30,
CommandText = "sp_StoredProcedureName",
Connection = Main.Con,
CommandType = CommandType.StoredProcedure
};
var sdrQueues = cmd.ExecuteReader();
var uncheckedQueues = new List<DigitalQueue>();
while (sdrQueues.Read())
{
var workingQueue = new DigitalQueue
{
queueId = sdrQueues.GetValue(0).ToString(),
queueStatus = sdrQueues.GetValue(1).ToString()
};
if (!sdrQueues.IsDBNull(2))
{
workingQueue.queueDate = sdrQueues.GetDateTime(2);
}
uncheckedQueues.Add(workingQueue);
}
return uncheckedQueues;
}
解决方案
推荐阅读
- c# - 使用 AutoMapper 将 Viewmodel 映射到模型
- javascript - ChartJS 仅显示特定刻度的大字体
- python - WTForms 动态字段:使用 bind() 绑定无界字段
- javascript - Forge Viewer 无法显示边缘
- python - Tensorflow 模型训练:缺少 1 个必需的位置参数:'self'
- node.js - 访问 Object.keys adonis.js (Node.js) 中的特定属性
- angular - 订阅数据服务中保存的可观察数据
- c# - 追加数组和列表
- asp.net-core - 使用 ASP .NET Core 呈现 .rdlc 报告
- python-3.x - 黑屏管理器kivy