[英]Returning JSON results to API calls from already existing Controller actions in ASP.NET MVC 5
我是 ASP.NET WebApi 的新手。 我正在研究 ASP.NET MVC 5 项目。
当我开始它时,它并没有考虑到 WebApi 功能。 我继续在此基础上进行建设。 到目前为止,它完全是一个 MVC 项目。 我编写了很多控制器,其中包含各种操作,例如从数据库中获取查询结果。
现在我想为项目添加 WebApi 支持。 例如:我有一个 controller 操作,它从数据库中获取一堆数据。 现在,我需要以 JSON 格式返回数据。
我的问题是,我是否需要再次编写所有此类函数来获取数据并将其返回为 JSON? 我在各种控制器上确实有很多动作。 再次重写这些动作将是很多工作。 如果可能的话,如何在代码添加最少的情况下做到这一点,同时又不破坏当前 MVC 项目的正常运行?
这只是其中一个 MVC 控制器中的操作示例:
public string GetName()
{
string constr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
string stud_name;
using (SqlConnection con = new SqlConnection(constr))
{
SqlCommand cmd = new SqlCommand('SELECT name FROM Table WHERE id = 232', con);
stud_name = Convert.ToString(cmd.ExecuteScalar());
}
return stud_name;
}
我前段时间写过这个 function。 还有其他几个这样的,它们返回其他东西。 考虑到此操作,如何将字符串作为 JSON object 返回到 api 调用? 有没有办法在不为 ApiController 重写 function 的情况下做到这一点?
您可以将方法添加到常见的 class 并从两种控制器的操作方法中调用这些方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.