Entity Framework 6 Code-First: Integration gespeicherter Prozeduren
Verbessern Sie Ihr Entity Framework 6 Code-First-Anwendungen mit gespeicherten Prozeduren für optimierte Datenbankinteraktionen und komplexe Betriebskapselung. In dieser Anleitung wird beschrieben, wie Sie gespeicherte Prozeduren nahtlos in Ihren Code-First-Workflow integrieren.
Prozedurzuordnung und Ausführung:
Mapping: Innerhalb Ihrer DbContext
-Methode OnModelCreating
, verwenden Sie MapToStoredProcedures
, um Entitäten mit ihren entsprechenden gespeicherten Prozeduren zu verknüpfen. Geben Sie den Verfahrensnamen und die Parameter für jede Aktion an (einfügen, aktualisieren, löschen).
Ausführung: Verwenden Sie die Methode Database.SqlQuery
, um die gespeicherte Prozedur auszuführen. Geben Sie den Vorgangsnamen und die Eingabeparameter an. Wenn die Prozedur Daten zurückgibt, geben Sie das Ergebnis an Ihren Entitätstyp.
Illustratives Codebeispiel:
Nehmen wir eine Department
-Ntity an. Der folgende Code zeigt, dass ein Abteilungsabteil mit einem gespeicherten Verfahren einfügt:
<code class="language-csharp">public class DepartmentContext : DbContext { protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity<Department>() .MapToStoredProcedures(s => { s.Insert(i => i.HasName("insert_department") .Parameter(b => b.Name, "department_name")); // Add mappings for UPDATE and DELETE procedures here }); } public void InsertDepartment(string departmentName) { var result = this.Database.SqlQuery<Department>( "EXEC insert_department @department_name", new SqlParameter("@department_name", departmentName)); } }</code>
Diese InsertDepartment
-Methode führt das gespeicherte Verfahren insert_department
aus und übergibt den Abteilungsnamen.
Wichtige Überlegungen:
Das obige ist der detaillierte Inhalt vonWie kann ich gespeicherte Prozeduren in Entity Framework 6 Code-First aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!