我有一個類是從DataContext繼承來使用Linq的。在DataContext上使用GetTable方法檢索一個對象
public class Context : DataContext
{
public Context(string connectionString)
: base(connectionString)
{
}
}
[Table(Name = "TableNameee")]
public class ClassOfTable
{
}
而我有另一個類映射到表。 我使用
context.GetTable<ClassOfTable>()
方法來檢索其映射到ClassOfTable類表中的所有行。但我想從數據庫表中檢索一行。 我可以這樣使用它:
ClassOfTable cls = context.GetTable<ClassOfTable>().Where(p=>p.id==1).First();
但是,這將檢索表的每一行。我不想這樣做。我應該怎麼做才能從表格中取出一行?
謝謝你的回答。我明天會測試它。再一次非常感謝你。 – uzay95 2010-02-02 23:10:58
嗨,尼克。我不知道你是如何擴展Context類而不是靜態的(正如你知道的,如果我們想從DataContext類擴展Context類,我們不能將它設置爲一個靜態類,我們可以嗎?) – uzay95 2010-02-03 11:03:27
@ uzay95 - 通常當你生成的DataContext類是一個部分,所以只需將該方法粘貼到另一個具有相同類類型的'.cs'中:http://msdn.microsoft.com/en-us/library/wa80x488(VS.80)。 aspx另外...只需在靜態類中使用上面的擴展方法,它將在intellisense中顯示:http://msdn.microsoft.com/en-us/library/bb383977.aspx – 2010-02-03 11:08:46