![](/img/trans.png)
[英]EF ef Database.SqlQuery internal rollback into executed stored procedure
[英]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.