使用 C# 从 SQL 服务器中的 dbContext 访问给定 table 的给定字段

Accessing a given field of a given table from dbContext in SQL Server using C#

我想 select 使用 C# 中 Entity Framework 中的 LINQ to Entities 从数据库中获取一行。

我对方法的争论是:

我想 select table "TableName" 中的行根据这三个参数动态地 "fieldName" 匹配特定值。

您不需要entity framework做这样的事情,您可以使用 dbContext 中提供的辅助方法来执行您的自定义查询:

  public List<T> ListElements(string tableName, string columnName) {
    var db = new DbContext();
    var query = string.Format("SELECT {0} FROM {1}", tableName, columnName);
    var data = db.Database.SqlQuery<T>(query);
    return data;
  }

您可以使用此方法将特定类型的项目列表到 table 中。 假设你想显示一个名为 "Users" 的 table 的所有 ids 你可以写这样的代码:

var userIds = ListElements<int>("Users", "Id");