[英]Cast Entity to Implemented Interface in a Generic Method Using LINQ for Entity Framework
[英]Refactoring LINQ statement using Entity Framework to a method
我在代碼中多次使用了這些Linq查詢。 我想對它們做一個方法並返回結果。
var myevent = (from v in myEntities.Events
where _EventID == v.EventID
select v).SingleOrDefault();
var comments = (from c in myEntities.Fora
orderby c.DateCreated descending
where c.EventID == _EventID
select c).ToList();
您的問題不是很清楚,但是聽起來您只需要兩個方法即可返回linq查詢的結果。
public Events GetEvent(int id)
{
return (from v in myEntities.Events
where _EventID == id
select v).SingleOrDefault();
}
public List<Fora> GetComments(int id)
{
return (from c in myEntities.Fora
orderby c.DateCreated descending
where c.EventID == id
select c).ToList();
}
您的問題有太多未知數,無法具體回答,這是SO所特有的。
我將假設您的實體是數據庫支持的。
您需要了解交易范圍。 您可以將單獨的類與靜態“ myEntities”一起使用,並實現為上面的Anonymous。 但是,如果調用了不同的線程,則可能會導致嵌套事務。 您也不想每次都建立一個新的連接。
我會將其實現為更廣泛的數據訪問層的一部分,並將您的連接作為構造函數的一部分傳遞給它。 如果選擇使用靜態方法,則應將連接作為參數之一傳遞。
或者,您可以使用這種邏輯創建一個抽象類,並讓子類實現它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.