簡體   English   中英

從一個表基於其名稱屬性返回實體框架對象的最短方法是什么?

[英]whats the shortest way of returning an Entity Framework object from one table based on it's name attribute?

基於一個表的name屬性從一個表返回Entity Framework對象的最短方法是什么?

因此,假設有一個表名為列名的表人員,返回名稱為“ Tim”的人員對象的最快方法是什么?

例如context.People.Select(m => m.Name == "Tim")似乎不起作用?

context.People.First(m => m.Name == "Tim")

您只想要一個對象嗎? 如果您確信表格中只有一項符合您的條件,則可以說

context.People.Single(m => m.Name == "Tim");

如果可能有多個,而您只想要第一個,請改用.First()擴展方法。 區別在於,如果多個記錄符合您的條件,則Single將引發異常。 First simple會按其說的去做,它將獲取任何數量的記錄中的第一個。

(如果表中可能沒有合適的記錄,請考慮使用SingleOrDefault和FirstOrDefault方法。)

編輯 :顯然,Linq-To-Entities框架不支持.Single,但首先是。

這也可以...(也許這不是最短的方法,但我覺得它更具可讀性)

        var person = (from p in context.People
         where p.Name == "Tim"
         select p).FirstOrDefault();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM