1
我想發送一個LINQ表(實體)作爲函數的參數來在select {}中獲取一個值。目的是基於表/實體的幾個屬性返回一個值,並且我不希望所有確定返回值的邏輯都在LINQ語句中。基本上,是否可以使用'value = GetValue(tbl)'這一行?你可以將LINQ表傳遞給一個函數嗎?
Public class MyClass
{
public int value { get; set; }
}
//Some General function to determine return value from multiple properties
Private int GetValue(MyEntity cls)
{
if (cls.var1 == 1)
return var2;
if (cls.var1 == 2)
return cls.var2 - cls.var3;
return -1;
}
Public List<MyClass> GetStuff(int iType)
{
List<MyClass> myClass = (from tbl in context.MyEntity
where tbl.MyType == iType
select new MyClass
{
value = GetValue(tbl)
}).ToList<MyClass>();
return myClass;
}
我遇到的問題不是調用任意函數,而是使用'table'調用任意函數。我希望將'table'作爲'object'發送,而不是將所有屬性作爲參數發送給函數(或者像我之前提到的那樣處理Linq語句中的邏輯)。 – user606934 2011-02-27 18:38:44
更正...看來我不能使用任意函數。感謝你的幫助,穆罕默德! – user606934 2011-02-28 15:56:04