繁体   English   中英

来自EF7 Database.SqlQuery的字符串循环列表

[英]Looping list of strings from EF7 Database.SqlQuery

我想对我们拥有的新API进行一些测试。 因此,我想从数据库中加载大约115个VIN,并将其插入API调用中。 我知道使用模型是最佳实践,但是仅出于测试目的,我宁愿不必每次都只想测试类似的东西时就构建模型,然后再删除模型并将其从上下文中删除。

我只是想获得一个VIN字符串列表,我可以通过某种方式循环浏览。

这是我的代码:

dynamic ret = new ExpandoObject();

ret.vehicles = _context.Database.SqlQuery<string>("SELECT MIN(VIN) FROM bl_DealerInventory WHERE DealerID = "+ dealer.ClientDealerID +" GROUP BY Year, Make, Model, ModelNumber");

for (var i = 0; i < ret.vehicles.Count; i++)
{
    System.Diagnostics.Debug.WriteLine("Ran vin "+ ret.vehicles[i]);
}

SQL有效,但是我似乎找不到找到将其更改为列表的方法,因此可以循环遍历它。 我如何遍历它? 还是我必须将其转换为其他或其他内容?

这是我正在使用的实体框架:

<package id="Microsoft.AspNet.Identity.Core" version="2.2.1" targetFramework="net461" />
<package id="Microsoft.AspNet.Identity.EntityFramework" version="2.2.1" targetFramework="net461" />

让我知道是否需要其他信息。 谢谢。

我使用foreach而不是for循环来使循环工作。

如Pawel Hemperek所述,其原因如下:

因为SqlQuery返回DbRawSqlQuery,它实现IEnumerable并在枚举时执行查询。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM