asp.net中写一个调用存储过程的方法
时间: 2024-03-01 11:27:46 浏览: 17
在ASP.NET中调用存储过程可以使用ADO.NET库提供的SqlCommand对象。下面是一个示例方法,该方法执行名为"myStoredProc"的存储过程并返回一个DataTable对象:
```csharp
public DataTable CallStoredProcedure(string connectionString, string storedProcedureName, SqlParameter[] parameters)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
using (SqlCommand command = new SqlCommand(storedProcedureName, connection))
{
command.CommandType = CommandType.StoredProcedure;
if (parameters != null)
{
command.Parameters.AddRange(parameters);
}
connection.Open();
SqlDataAdapter adapter = new SqlDataAdapter(command);
DataTable dataTable = new DataTable();
adapter.Fill(dataTable);
return dataTable;
}
}
}
```
在上面的代码中,connectionString参数是连接字符串,storedProcedureName参数是存储过程的名称,parameters参数是存储过程的参数列表。要使用此方法,请提供正确的连接字符串和存储过程名称,并将参数作为SqlParameter数组传递。例如,以下代码调用名为"GetCustomers"的存储过程,并将一个名为"city"的参数传递给它:
```csharp
string connectionString = "Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;";
string storedProcedureName = "GetCustomers";
SqlParameter[] parameters = { new SqlParameter("@city", "London") };
DataTable dataTable = CallStoredProcedure(connectionString, storedProcedureName, parameters);
```
在上面的代码中,连接字符串应该被替换为你的数据库连接字符串,GetCustomers应该是你的存储过程的名称,@city应该是你的存储过程中参数的名称。