ASP.NETCoreWebAPI:如何在ADO.NET中实现存储过程输出?
创始人
2024-09-18 10:30:59
0
  1. 在数据库中创建一个存储过程,该存储过程接受一些参数并返回结果集。以下是一个示例存储过程:

CREATE PROCEDURE [dbo].[GetEmployeeDetails] @EmpId Int AS BEGIN SELECT EmpId, EmpName, EmpEmail, EmpSalary FROM Employees WHERE EmpId = @EmpId END

  1. 在Web API控制器中添加一个API方法。该方法将使用ADO.NET连接到数据库并调用上述存储过程。

[HttpGet("{id}")] public async Task Get(int id) { string cs = Configuration.GetConnectionString("MyConnString"); using (SqlConnection con = new SqlConnection(cs)) { SqlCommand cmd = new SqlCommand("GetEmployeeDetails", con); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@EmpId", id); con.Open(); SqlDataReader rdr = await cmd.ExecuteReaderAsync();

    if (rdr.HasRows)
    {
        List employees = new List();
        while (rdr.Read())
        {
            Employee employee = new Employee()
            {
                EmpId = Convert.ToInt32(rdr["EmpId"]),
                EmpName = rdr["EmpName"].ToString(),
                EmpEmail = rdr["EmpEmail"].ToString(),
                EmpSalary = Convert.ToInt32(rdr["EmpSalary"])
            };
            employees.Add(employee);
        }
        return Ok(employees);
    }
    else
    {
        return NotFound();
    }
}

}

此方法将接受一个id参数,并将其传递给存储过程获取有关特定员工的详细信息。接下来,它使用SqlDataReader从存储过程返回的结果集来填充一个名为employees的List对象。

  1. 在Employee类中添加以下属性:

public int EmpId { get; set; } public string EmpName { get; set; } public string EmpEmail { get; set; } public int EmpSalary { get; set; }

这些属性将用于存储从存储过程获取

相关内容

热门资讯

一分钟了解!如何设置钱塘十三水... 一分钟了解!如何设置钱塘十三水辅助器(透视)wepoker有机器人吗(透明挂教程有挂详细)《详细加薇...
必看攻略!星悦辅助神器(透视)... 必看攻略!星悦辅助神器(透视)pokemomo辅助工具(扑克教程确实有挂);无需打开直接搜索加(薇:...
推荐十款!榆林打锅子技巧(透视... 德普之星有透视辅助吗是一款专注玩家量身打造的游戏记牌类型软件,在德普之星有透视辅助吗这款游戏中我们可...
透视科技!牵手游戏辅助软件(透... 透视科技!牵手游戏辅助软件(透视)hardrock透视工具(高科技教程有挂教程);无需打开直接搜索打...
玩家必看!wepoker辅助是... 玩家必看!wepoker辅助是真的假的(透视)德普之星透视辅助软件下载(玩家教程真的有挂);无需打开...
透视黑科技!威信茶馆透视挂(透... 透视黑科技!威信茶馆透视挂(透视)wepoker新号好一点吗(系统教程有挂方法);无需打开直接搜索薇...
透视免费!四川熊猫辅助软件下载... 您好:四川熊猫辅助软件下载这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
总算了解!途游四川小程序脚本辅... 您好:途游四川小程序脚本辅助这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用...
必备科技!友间联盟辅助(透视)... 必备科技!友间联盟辅助(透视)wepoker有辅助插件吗(分享教程有挂头条)>>您好:软件加薇136...
透视有挂!蜜瓜大厅小程序辅助(... 蜜瓜大厅小程序辅助 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由: ...