Heim >Backend-Entwicklung >C++ >Wie rufe ich gespeicherte Prozeduren mit Parametern im Entität Framework 6 Code-First auf?
Entity Framework 6 Code-First: Effizient aufgereicherte Prozeduren mit Parametern
aufrufenIm Code-ersten-Ansatz von Entity Framework 6 ist die Nutzung gespeicherter Verfahren für komplexe Datenbankinteraktionen von wesentlicher Bedeutung. Eine häufige Herausforderung besteht darin, gespeicherte Verfahren effektiv aufzurufen und Parameterübergang zu verwalten.
veranschaulichen wir eine gespeicherte Prozedur, mit der eine Abteilung eingefügt wurde:
<code class="language-sql">ALTER PROCEDURE [dbo].[insert_department] @Name [varchar](100) AS BEGIN INSERT [dbo].[Departments]([Name]) VALUES (@Name) DECLARE @DeptId int SELECT @DeptId = [DeptId] FROM [dbo].[Departments] WHERE @@ROWCOUNT > 0 AND [DeptId] = SCOPE_IDENTITY() SELECT t0.[DeptId] FROM [dbo].[Departments] AS t0 WHERE @@ROWCOUNT > 0 AND t0.[DeptId] = @DeptId END</code>
Um diese gespeicherte Prozedur in Ihren Entitäts -Framework -Kontext zu integrieren
<code class="language-csharp">modelBuilder .Entity<department>() .MapToStoredProcedures(s => { s.Update(u => u.HasName("modify_department") .Parameter(b => b.Department, "department_id") .Parameter(b => b.Name, "department_name")) .Delete(d => d.HasName("delete_department") .Parameter(b => b.DepartmentId, "department_id")) .Insert(i => i.HasName("insert_department") .Parameter(b => b.Name, "department_name")); });</code>Mit dieser Zuordnung können Sie die gespeicherte Prozedur direkt von Ihrem DBContext aufrufen:
<code class="language-csharp">this.Database.SqlQuery<department>("insert_department", new SqlParameter("@Name", departmentName));</code>Für gespeicherte Prozeduren, die mehrere Ergebnissätze zurückgeben (wie im Beispiel gezeigt), wenden Sie sich an die Dokumentation von Microsoft zu "gespeicherten Prozeduren mit mehreren Ergebnismengen" für Best Practices bei der Behandlung der zurückgegebenen Daten. Dadurch wird Anleitung zur effizienten Verarbeitung der Mehrfachdatensätze vorgesehen.
Das obige ist der detaillierte Inhalt vonWie rufe ich gespeicherte Prozeduren mit Parametern im Entität Framework 6 Code-First auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!