0
如果我的問題沒有得到很好的解釋,我很抱歉。 想知道是否有可能達到例如使用sql而不是使用linq的外鍵連接表。 也許我會舉個例子。linq/entity與.ToList()一樣,以相同的方式達到連接表約束乾淨的SQL
假設我有兩張表Customers
和Towns
,其中fk約束來自Towns表。 現在使用LINQ拿東西都在同一時間我就可以做到這一點
using(DbContext db = new DbContext()){
var customers = db.customers.ToList();
//Then I can reach easy colums of towns just like that
List<string> lt = new List<string>();
foreach(var item in customers){
lt.add(item.customers.towns.nameofthetown.ToString());
}
}
的問題是,如何做,在正常SQLReader的?或者是它的東西只有你能使用LINQ /實體
確定這裏做是例如情況下,類
public class Customers{
public int ID{get;set;}
public string Name{get;set;}
pulic string Surname{ get;set}
}
public class Towns{
public int ID{get;set;}
public string NameOfTheTown{get;set}
public int FkID{get;set;}
}
現在.. Customes是父表,城鎮是一個孩子。 如何與使用清潔的SQL(合併?)無論是在一個列表中的那些表的 - 名單,只是我做的例子在上面使用LINQ
我想,因爲這item.customers.towns.nameofthetown.ToString()
相同的效果,而無需使用LINQ
你想寫一個SQL查詢,做一個連接..?也許你可以看看使用像linqpad這樣的應用程序,它可以將linq轉換成普通的sql,或者只要你知道你需要加入的密鑰就可以寫出sql查詢。 – MethodMan
@MethodMan事情是用內部連接我做SqlReader我可以'把它(或者我只是不知道如何)兩個不同的表兩個列表,這是我們的情況列表,我不得不將內部加入城市的東西,而不是自己的表像linq這樣的一個表中做它,我想知道是否有可能做到這一點與普通的Sql沒有使用Linq /實體 –
Harugawa
爲什麼你不能使用單個SqlReader連接2個表..?這只是一個SQL查詢您是否熟悉如何編寫連接 – MethodMan