MVC 5, EF-6, und "die Erste Code aus der Datenbank" Gespeicherten Prozeduren
In die Suche nach einer Antwort, sogar mit den Stichwörtern "Erste Code aus der Datenbank" in Anführungszeichen, fand ich, dass die Antworten nicht auf die spezifischen Bedingungen, daher bitte ich die Frage mit einem besonderen Schwerpunkt auf das "Erste Code aus der Datenbank" nur.
In einem ASP.NET MVC 5-Webanwendung mithilfe von Entity Framework 6, ich möchte in der Lage sein zu verwenden "ADO.NET Entity Data Model" - Assistenten, um die Zuordnung zu einer vorhandenen gespeicherten Prozedur in einer Datenbank.
Warum stellte ich die Frage, und was ich hoffe zu erreichen?
Diese bestimmte gespeicherte Prozedur ist eine parametrisierte Abfrage, wo der Nutzer (in der Ansicht) vorzulegen, durch die form einen Datumsbereich ein und erhalten die Ergebnisse der Abfrage in die Tabelle. Auf der Seite SQL Server, ist es einfach: Sie deklarieren zwei Termine und erhalten Sie Ihre Abfrage-Ergebnisse.
Möchte ich den Benutzer aus der Ansicht "einfach" einen Datumsbereich auswählen und sehen sofort die Ergebnisse unten als versorgt, die von der gespeicherten Prozedur Abfragen.
Unten sind screenshots zeigen mein Versuch, verwenden Sie den Assistenten zum anzeigen der gespeicherten Prozedur.
1. Geben Sie den Namen des Datenbank-Kontext
2. Geben Sie "Erste Code Aus Der Datenbank"
3. Wählen Sie Datenbank-Verbindung
4. Keine gespeicherten Prozeduren verfügbar sind
Ich auch feststellen, dass die option zum importieren von gespeicherten Prozeduren ist ausgegraut.
Du musst angemeldet sein, um einen Kommentar abzugeben.
EDIT: Tarun erwähnt, die gespeicherte Prozeduren nicht angezeigt, aufgrund fehlender Berechtigungen.
Entity Framework bieten APIs aufrufen von gespeicherten Prozeduren jedoch können Sie auch anzeigen einer gespeicherten Prozedur, die auf ein Modell.
Finden Sie unter diesem link:
https://msdn.microsoft.com/en-us/data/dn468673.aspx
Binden ein Modell einer gespeicherten Prozedur:
Wenn Sie nicht interessiert sind bei der Zuordnung einer gespeicherten Prozedur finden Sie in diesem Beitrag:
So rufen Sie die Gespeicherte Prozedur in Entity Framework 6 (Code-First)?
DateTime[] parameters = new DateTime[2] { d1, d2 }; var query = db.Database.SqlQuery<PerfOdomoeterDate>("GetCreditSumByDateRange",parameters).ToList();
Arbeiten noch daran.Die direkte Antwort auf meine Frage ist, es gibt keinen Weg, ich kann trick der Assistent zum importieren einer gespeicherten Prozedur.
Statt, dies ist, was ich tun musste:
Fügen Sie nicht alles auf die "OnModelCreating" - Funktion.
Rechten Maustaste auf den Ordner Controller, und eine neue eingerüstet Artikel: "MVC 5 Controller mit Entity Framework".
In der Index-Aktion gezeigt wird ein "hello world" - Beispiel, um sicherzustellen, dass basic in Kontakt mit der Gespeicherten Prozedur. Ich werde auf jeden Fall anpassen, Ansicht, Modell, Parameter, etc. Dies sollte sich aber deutlich zeigen, wie, um Ihren code zu arbeiten.
Berechtigungen.(Stellen Sie sicher, dass der db-Benutzer hat die Berechtigungen auf die gespeicherte Prozedur
Ich glaube nicht, dass Sie können dies tun, von der der Assistent noch, die Generierung von stored procs ist ein relativ neues feature.
Zuordnen procs von dem code, den Sie benötigen, um die folgenden
Alle details sind in diesem Beitrag
https://msdn.microsoft.com/en-us/data/dn468673.aspx