[英]Converting SQL with “inner join”s and “like”s to LINQ
我是LINQ的新手,並且(很遺憾)我需要將一些混亂的sql命令轉換為Linq。 我的數據庫中有兩個簡單的表。 第一個是保存名稱(列“名稱”和“ NameID”),其他表包含昵稱(列數“ Nick”,“ NickID”,“ FK_NameID”)。 每個昵稱都有ID和指向實名的外鍵(名稱ID)。
使用C#,此代碼用於檢索其中包含“ SomeString”的任何昵稱:
comm = new SqlCommand("SELECT Name FROM Names INNER JOIN Nicks ON NameID = FK_NameID AND Nick LIKE '%" + SomeString + "%'", Connection);
據我在谷歌搜索后所看到的,SQL命令中的“ Like”和“ Join”會產生復雜的Linq:\\您能幫我一下,告訴我什么LINQ表達式等於我到目前為止使用的SQL命令嗎? 是否有任何繞過Linq並改為使用DataSet和DataTables的工具? 我總是Linq-noob了:\\
實際上非常相似:
var query = from name in names
join nick in nicks on name.NameId equals nick.FK_NameId
where nick.Nick.Contains(SomeString)
select name.Name;
您應該考慮一下您的列名FK_NameId
最好作為NameId
(在我看來)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.