您可以使用任何ORM,例如Entity Framework,但是,我将提供一个示例来手动进行操作:
var list = new List<KeyValuePair<int,string>>()
using(var connection = new SqlConnection(connectionString))
using(var command = new SqlCommand("SELECT * FROM interview_Table",connection))
using(var reader = command.ExecuteReader())
{
if (connection.State != ConnectionState.Open) { connection.Open(); }
if (reader.HasRows)
{
foreach (var row in reader)
{
//ensurance
var isValidId = int.TryParse(row["Id"]?.ToString(),int out id);
var description = row["Description"]?.ToString();
// only fetch rows with a valid id number with description that is not empty or null
if(isValidId && !string.IsNullOrEmpty(description))
{
list.Add(new KeyValuePair<int,string>(id,description));
}
}
}
}
,
是的,您的要求是可能的。
您将必须建立数据库连接并运行查询以提取所需的数据。接收到数据后,将其放入集合中。
该集合可以包含KeyValuePair,就像您编写的或一样,您可以创建一个类来复制表结构并包含这些对象的集合。
您还可以更进一步,研究诸如Entity Framework之类的东西。
祝你好运!
,
您可以使用 EntityFramework ToDictionary
函数执行此映射。
var test = await this.dbcontext.InterviewQuestions
.Select(x => new { x.Id,x.Description})
.AsEnumerable()
.ToDictionaryAsync(xkvp => xkvp.Id,xkvp.Description);
- 如果您使用的是.net core,则可以检查getting started with EF core
- 如果您使用的是.net,则可以检查getting started with EF 6
我的个人最爱之一code first with EF 6 from existing DB将生成您所需的大多数代码。
本文链接:https://www.f2er.com/2815087.html