//create parameters to pass to the stored procedure //First input Parameter var param1 = new SqlParameter { ParameterName = "@paramName1", SqlDbType = SqlDbType.Int, Direction = ParameterDirection.Input, Value = 1 }; //Second input parameter var param2 = new SqlParameter { ParameterName = "@paramName2", SqlDbType = SqlDbType.VarChar, Direction = ParameterDirection.Input, Value = "Test Input" }; //third out parameter var param3 = new SqlParameter { ParameterName = "@paramName3", SqlDbType = SqlDbType.VarChar, Direction = ParameterDirection.Output, Size = 255 }; //compose the SQL var SQLString = "EXEC [dbo].[name of the Stored Proc] @paramName1, @paramName2, @paramName3"; //Execute the stored procedure var employees= DataContext.Employee.SqlQuery(SQLString, param1, param2, param3); //or you can execute the SP using below //var employees = DataContext.Database.SqlQuery<Employees> (SQLString, param1, param2, param3)
Points of Interest
- In the above sample,
DataContext
would be the name of yourDataContext
Instance variable - Employee would be name entity (POCO class) mapping to your database
- If the
resultset
returned by the SP would be mapped to theIEnumerable
collection of Entity - The above sample would returnIEnumerable<Employee>
- We can use
<DataContext>.DataBase.SqlQuery
method or<DataContext>.<EntityName>.SqlQuery
- Your
out
param declared would have value returned by SP - The connect sting should have
MARS = true - MultipleActiveResultSets=true
时间: 2024-11-05 06:11:50