MVC c# 调用 MS sql的存储过程
发布人:shili8
发布时间:2024-02-06 00:44
阅读次数:49
在C#中使用MVC架构调用MS SQL的存储过程是一种常见的做法,可以提高程序的性能和安全性。下面是一个简单的示例,演示了如何在C#中调用MS SQL的存储过程。
首先,我们需要在MS SQL Server中创建一个存储过程。假设我们有一个名为"GetUserInfo"的存储过程,用于获取用户信息。存储过程的代码如下:
sqlCREATE PROCEDURE GetUserInfo @UserId INTASBEGIN SELECT * FROM Users WHERE UserId = @UserIdEND
接下来,我们在C#中创建一个Model类来表示用户信息:
csharppublic class User{ public int UserId { get; set; } public string UserName { get; set; } public string Email { get; set; } }
然后,我们在Controller中编写代码来调用存储过程:
csharppublic class UserController : Controller{ public User GetUserById(int userId) { User user = new User(); string connectionString = "YourConnectionString"; using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); SqlCommand command = new SqlCommand("GetUserInfo", connection); command.CommandType = CommandType.StoredProcedure; command.Parameters.AddWithValue("@UserId", userId); SqlDataReader reader = command.ExecuteReader(); if (reader.Read()) { user.UserId = (int)reader["UserId"]; user.UserName = (string)reader["UserName"]; user.Email = (string)reader["Email"]; } connection.Close(); } return user; } }
在上面的代码中,我们首先创建了一个SqlConnection对象,并打开了数据库连接。然后,我们创建了一个SqlCommand对象,指定了要调用的存储过程的名称,并添加了一个参数。接着,我们执行了存储过程,并将结果读取到一个DataReader对象中。最后,我们将读取到的数据赋值给User对象,并返回该对象。
这就是一个简单的示例,演示了如何在C#中使用MVC架构调用MS SQL的存储过程。通过使用存储过程,我们可以提高程序的性能和安全性,同时也可以更好地组织和管理数据库操作的代码。