如何将数据库表中的列放入动态列表中?

Posted

技术标签:

【中文标题】如何将数据库表中的列放入动态列表中?【英文标题】:How to put a column from a database table into a dynamic list? 【发布时间】:2019-07-17 08:37:28 【问题描述】:

对于我的项目,我想访问数据库,尤其是其中包含 BauTeilId 的一张表,并将所有 BauTeilId 放入控制器中的一个列表中


默认连接:

"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=QualitätsKontrolleDB;Trusted_Connection=True;MultipleActiveResultSets=true"

控制器 字符串 Code 来自 html,由 6 位数字组成

private ApplicationDbContext Context = new ApplicationDbContext();

        [HttpGet]
        public IActionResult StartPage(string Code)
        
            Debug.WriteLine(Code);

            var list = Context.Result.All(c => c.BauTeilId);
            return View();
        

用于此的表格 我只需要 BauTeilId TypenID int PruefungenID int BildID 整数 BauTeilID 字符串 日期日期时间 xLabel 字符串 X 整数 YLabel 字符串 整数 FehlerCode 字符串 Fehlername 字符串 FehlerGruppe1 字符串 FehlerGruppe2 字符串 结果整数


目前输出不存在,但应该是整列。

【问题讨论】:

【参考方案1】:

如果只想从表中获取 BauTeilId,例如select BauTeilId from table,请使用

(from t in Context.Result
 select new 
  t.BauTeilId
 ).toList();  // .toList(); is not necessary, Linq returns an `IEnumerable `

那个 LINQ 语句,希望你明白。

【讨论】:

【参考方案2】:

您可以像这样列出您想要的任何列:

var myDynamicList = Context.Result.Select(c=> new  c.BauTeilId ).ToList();

这将是一个动态类型的列表。例如,您可以像这样调用第一个元素 BauTeilId:

myDynamicList.First().BauTeilId;

【讨论】:

以上是关于如何将数据库表中的列放入动态列表中?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用计数查询来(自动)更新表中的列

打开 XML 电子表格读取表

如何以最佳性能明智地将右表中的列加入左列表

如何使用 C# 获取 Access 数据库中的列列表?

如何将数据库中的值放入表中的特定列

如何从多个表中获取数据并将它们与erb中的每个表一起转换