c# web API 如何向数据库插入数据
时间: 2024-03-02 15:53:12 浏览: 18
可以使用C#中的ADO.NET技术来向数据库中插入数据。以下是一个示例代码,演示如何在Web API中插入数据到SQL Server数据库中:
首先,在Web.config文件中添加数据库连接字符串:
```xml
<connectionStrings>
<add name="MyConnectionString" connectionString="Data Source=MyServer;Initial Catalog=MyDatabase;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
```
然后,在Web API的Controller中编写代码:
```csharp
using System.Data.SqlClient;
//插入数据的Action
[HttpPost]
public IHttpActionResult InsertData(string name, int age)
{
//连接数据库
using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString))
{
try
{
//打开连接
conn.Open();
//构建SQL语句
string sql = "INSERT INTO MyTable(Name, Age) VALUES(@Name, @Age)";
//创建Command对象
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
//添加参数
cmd.Parameters.AddWithValue("@Name", name);
cmd.Parameters.AddWithValue("@Age", age);
//执行SQL语句
int rows = cmd.ExecuteNonQuery();
//返回结果
return Ok(rows);
}
}
catch (Exception ex)
{
//处理异常
return BadRequest(ex.Message);
}
finally
{
//关闭连接
conn.Close();
}
}
}
```
以上代码通过ADO.NET的SqlConnection和SqlCommand对象连接数据库并执行插入数据的SQL语句。在插入数据之前,我们需要先构建一个SQL语句,并将要插入的数据以参数的形式添加到SqlCommand中。最后,通过ExecuteNonQuery方法执行SQL语句并返回受影响的行数。