Ich habe eine gespeicherte Prozedur wie folgt, die 1 Eingabeparameter (Name) dauert und 2 Ausgabeparameter (EmployeeId und Gehalt) zurückgibt. Unsere gespeicherte Prozedur wird Name in Employee-Tabelle einfügen und uns EmployeeId und Salary zurückgeben.Database.SqlQuery gespeicherte Prozedur aufrufen, die mehrere Ausgabeparameter hat
CREATE PROCEDURE dbo.insertemployee
@iName varchar(500),
@OEmployeeId int OUTPUT,
@OSalary Money OUTPUT
Wir verwenden EF Code First Ansatz. Ich bin in der Lage, Datensätze in Mitarbeitertabelle einzufügen und kann nicht finden, wie ich auf meine zwei Ausgabeparameter zugreifen kann. Ich weiß, dass ich wie folgt verwenden muss. Kann mir jemand sagen, was Ergebnis sein muss. Laut MSDN kann es eine Klasse sein, die Spaltennamen als Eigenschaften hat. Aber mein Fall ist, dass wir keine Spalten meiner Tabelle zurückgeben, sondern dass wir zwei Ausgabeparameter verwenden und ich weiß, wie ich auf diese beiden Ausgabeparameter @OEmployeeId und @OSalary zugreifen kann.
context.Database.SqlQuery<Result>(" exec dbo.insertemployee....);
public class Result
{
// what properties I must give here
}
Vielen Dank Peter Hansen . Das hat mein Problem gelöst. Es war wirklich schwer für mich, irgendwelche Posts und Blogs zu finden, die eine gespeicherte Prozedur aufrufen, deren Ausgabeparameter EF Code First verwendet. – Ziggler