Procedure: Een opgeslagen procedure met parameters uitvoeren met EntityCommand
In dit onderwerp wordt beschreven hoe u een geparameteriseerde opgeslagen procedure uitvoert met behulp van de EntityCommand klasse.
De code in dit voorbeeld uitvoeren
Voeg het schoolmodel toe aan uw project en configureer uw project om het Entity Framework te gebruiken. Zie De wizard Entiteitsgegevensmodel gebruiken voor meer informatie.
Voeg op de codepagina voor uw toepassing de volgende
using
instructies toe (Imports
in Visual Basic):using System; using System.Collections.Generic; using System.Data; using System.Data.Common; using System.Data.EntityClient; using System.Data.Metadata.Edm;
Imports System.Collections.Generic Imports System.Collections Imports System.Data.Common Imports System.Data Imports System.IO Imports System.Data.SqlClient Imports System.Data.EntityClient Imports System.Data.Metadata.Edm
Importeer de
GetStudentGrades
opgeslagen procedure en geefCourseGrade
entiteiten op als retourtype. Zie Een opgeslagen procedure importeren voor informatie over het importeren van een opgeslagen procedure.
Opmerking
Met de volgende code wordt de GetStudentGrades
opgeslagen procedure uitgevoerd, waarbij StudentId
dit een vereiste parameter is. De resultaten worden vervolgens gelezen door een EntityDataReader.
using (EntityConnection conn =
new EntityConnection("name=SchoolEntities"))
{
conn.Open();
// Create an EntityCommand.
using (EntityCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "SchoolEntities.GetStudentGrades";
cmd.CommandType = CommandType.StoredProcedure;
EntityParameter param = new EntityParameter();
param.Value = 2;
param.ParameterName = "StudentID";
cmd.Parameters.Add(param);
// Execute the command.
using (EntityDataReader rdr =
cmd.ExecuteReader(CommandBehavior.SequentialAccess))
{
// Read the results returned by the stored procedure.
while (rdr.Read())
{
Console.WriteLine("ID: {0} Grade: {1}", rdr["StudentID"], rdr["Grade"]);
}
}
}
conn.Close();
}
Using conn As New EntityConnection("name=SchoolEntities")
conn.Open()
' Create an EntityCommand.
Using cmd As EntityCommand = conn.CreateCommand()
cmd.CommandText = "SchoolEntities.GetStudentGrades"
cmd.CommandType = CommandType.StoredProcedure
Dim param As New EntityParameter()
param.Value = 2
param.ParameterName = "StudentID"
cmd.Parameters.Add(param)
' Execute the command.
Using rdr As EntityDataReader = cmd.ExecuteReader(CommandBehavior.SequentialAccess)
' Read the results returned by the stored procedure.
While rdr.Read()
Console.WriteLine("ID: {0} Grade: {1}", rdr("StudentID"), rdr("Grade"))
End While
End Using
End Using
conn.Close()
End Using