Ich habe eine Anwendung, in der ich eine gespeicherte Prozedur und LINQ verwenden. Mein Verfahren sieht wie folgt aus:Fetch n binden Daten von StoredProcedure mit Join, LINQ, dann Split. Verwenden von IMultipleResults, Linq2SQL
myProc
select col1, Col2, Col3 from Tab1 inner join Tab2 on col1=ColA join tab3 on Col1=ColD
Select cola, Colb, Colc from Taba inner join Tabb on cola=ColX join tabc on Cola=ColY
Select colP, ColQ, ColR from TabP inner join TabQ on colP=ColW join tabR on ColP=ColZ
ich diese gespeicherte Prozedur in LINQ bin ausgeführt wird. Wenn ich es ausführe, bekomme ich die Ergebnisse in IMultipleResults.
Unten ist mein Code in LINQ:
[Function(Name = "dbo.MyProc")]
[ResultType(typeof(TabA))]
[ResultType(typeof(TabB))] .....
public IMultipleResults GetMultipleResults([Parameter(DbType = "VarChar(50)")] string i_Cola)
{
IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), i_Cola);
return (IMultipleResults)result.ReturnValue;
}
Wenn ich es wie folgt ausführen:
MyContext mCtx = new MyContext()
var allResult = mCtx.GetMultipleResults(txtName.Text.Trim());
IEnumerable<Taba> TabaRes = allResult.GetResult<Taba>();
IEnumerable<TabB> TabbRes = allResult.GetResult<Tabb>();
Ich bin die Spaltenwerte der Tabellen bekommen, aber ich möchte das Innere auch Spalten beigetreten. Ich war schon in vielen Blogs und Foren genannt, wie ...
... zu versuchen, eine Lösung für mein Problem zu finden, aber konnte keine finden.
Sind Sie verrückt .......... fragte ich nach einer Lösung in linq die ll löse mein Problem nicht gefragt –
Kein Grund, so nervös und beleidigend darüber zu sein! Vielleicht habe ich dich nicht verstanden. Könnten Sie das näher ausführen? Möchten Sie, dass Ihre Store-Prozedur in LINQ oder .... neu geschrieben wird? Bitte erklären Sie es. –
@Umakanta seine sehr schlechte Form, um unhöflich zu Menschen zu sein, die versuchen, Ihnen zu helfen.Außerdem war Ihre Frage nicht genau klar und könnte eine vernünftige Person verwirren. – Will