我在確定c#和LINQ如何解決處理不一定返回表結構而是結果集的數據結構的常見問題時遇到問題。如何在LINQ中爲結果集製作返回類型
我有一個可行的存儲過程,並在我的DBML
[Function(Name="dbo.p_GetObject")]
public int p_GetObject([Parameter(Name="ObjectType", DbType="NVarChar(200)")] string objectType, [Parameter(Name="ItemState", DbType="Bit")] System.Nullable<bool> itemState, [Parameter(Name="IsPublished", DbType="Bit")] System.Nullable<bool> isPublished)
{
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), objectType, itemState, isPublished);
return ((int)(result.ReturnValue));
}
dbml的說,返回類型爲(無),這可能是癥結問題已經包括了。不過,我沒有與結果集匹配的DBML對象。
SP採用三個參數,並返回具有多行的三列(ID,名稱,值)的結果集。我可以創建這個數據對象,並調用它的ResultSet
當我寫一個函數調用對於這一點,我卡住:
public List<resultset> GetObject(string objectType, bool itemState, bool isPublished)
{
MyDataContext.p_GetObject(objectType, itemState, isPublished);
}
我的問題是:
我怎麼有數據上下文調用存儲過程填充我的resultSet對象?有更好的方法嗎?返回類型應該是什麼?一個SQL視圖?尋找好的建議...
要清楚的是,從應用程序調用SP並且工作正常,我只是不知道將其結果返回到POCO的最佳方法。我會研究你提到的生成類型。上述方法的任何具體提示將會有所幫助。謝謝馬克。 – 2009-03-04 03:07:26