NorthwindEntities db = new NorthwindEntities();
//返回一个集合
SqlParameter[] selparms = new SqlParameter[] { new SqlParameter("@orderid", 10248) };
var result = (from p in db.Orders.SqlQuery("execute dbo.GetOrderById @orderid", selparms) select p).ToList();
var result1 = db.Database.SqlQuery<Categories>("select * from dbo.Categories where CategoryID = @categoryid;", new SqlParameter[] { new SqlParameter("@categoryid", 1) }).ToList();
//返回标量值
Type t = typeof(int);
SqlParameter[] selcountparms = new SqlParameter[] { new SqlParameter("@orderid", 10248) };
var result2 = db.Database.SqlQuery(t, "execute dbo.GetOrderProductNumber @orderid", selcountparms).Cast<int>().First();
//返回受影响行数
SqlParameter[] delparms = new SqlParameter[] { new SqlParameter("@orderid", 10248) };
int i = db.Database.ExecuteSqlCommand("execute dbo.DropOrderDetailsByOrderId @orderid", delparms);
//获取输出参数的值
SqlParameter[] parms1 = new SqlParameter[] { new SqlParameter("@orderid", "10249"), new SqlParameter("@result", SqlDbType.NVarChar, 10) };
parms1[1].Direction = ParameterDirection.Output;
int rowsaffected = db.Database.ExecuteSqlCommand("execute [dbo].[testprocreturnparm] @orderid = 10249,@result = @result OUTPUT", parms1);
string s = parms1[1].Value.ToString();
//返回复杂类型
List<Product> list = db.Database.SqlQuery<Product>("execute dbo.testproc @productid", new SqlParameter[] { new SqlParameter("@productid", 1) }).ToList();