Wie man den return-Wert einer Gespeicherten Prozedur von SQL Server in nHibernate?
1.Datenbank-Plattform: SqlServer
2.Data Access: nHibernate 1.2
Nun müssen wir den Zugriff auf die store-Prozedur durch nHibernate,wie diese:
ALTER PROCEDURE TestProc()
AS
BEGIN
Select * From User
Return 1234
END
Ich weiß, ich kann mit der Benutzer-Liste von IQuery,
Und ich möchte den default-Wert zurück "1234" zu.
Frage:
- Wie man diese default-Rückgabewert?
- Wenn nicht bekommt es direkt , können wir den Wert von output-parameter?
warum sind Sie der Versuch zu nennen, ein 'ALTER PROC"? sind Sie versuchen, rufen Sie die eigentlichen proc?
Nein ,das ist der Prozedur-definition. Der Punkt ist, dass er uns zeigen will, was er will zurückgegeben.
Nein ,das ist der Prozedur-definition. Der Punkt ist, dass er uns zeigen will, was er will zurückgegeben.
InformationsquelleAutor xiemails | 2009-05-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
dies ist, wie ich es mache:
in meine .hbm.xml
in meinem repository.cs
PhysicalDocument
Entität? Ich bin besonders daran interessiert, dieId
Spalte. Danke.die Zuordnung der Id-Spalte ist in der hbm. ich hoffe, das hilft. <zurück-Eigenschaft column="DocId" name="Id" />
Das scheint nicht die Frage zu beantworten? Der OP hat gefragt, wie man den return-Wert einer gespeicherten Prozedur, nicht, wie die Zuordnung einer benannten Abfrage..
InformationsquelleAutor CurlyFro
NHibernate nicht lassen, verwenden Sie gespeicherte Prozeduren, die in dieser Art und Weise. Aber es erlaubt einen Weg, um Anrufe mit dem plain old ADO.NET API. Die NHibernate Dokumentation sagt, dass, wenn Sie diese Prozeduren verwenden, die Sie haben, um Sie auszuführen über die Sitzung.- Verbindung. Hier ist ein Beispiel -
Finden Sie weitere details hier -
http://refactoringaspnet.blogspot.com/2009/06/how-to-use-legacy-stored-procedures-in.html
InformationsquelleAutor Rohit Agarwal
Erste überhaupt, das ist nicht als ein "Standard-Rückgabewert" irgendwo, die ich je gesehen habe. Es ist nur der Rückgabewert. Es ist in der Regel verwendet, um zurück zum Erfolg /Fehler-status.
Ich weiß nicht, wie nHibernate tut Dinge, aber in ADO.NET Sie möchten, verwenden Sie einen parameter mit der Direction-Eigenschaft auf "Return". Vielleicht gibt es ein äquivalent in nHibernate.
OTOH, es wäre mehr üblich, dass ein OUTPUT-parameter, um eine tatsächliche sinnvolle Wert, und halten Sie die RETURN-Wert Fehler-codes, oder ignoriert.
InformationsquelleAutor John Saunders
Habe ich auch schon gemacht (nicht in nHibernate).
Müssen Sie gänzlich Verfahren wird die gesamte recordset, bevor das abrufen der output-Parameter.
Eine andere Diskussion
InformationsquelleAutor Cade Roux