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>
<code class="language-csharp">this.Database.SqlQuery<department>("insert_department", new SqlParameter("@Name", departmentName));</code>
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!