繁体   English   中英

将 JSON 结果返回到 API 调用,来自 Z9E0DA8438E1E38A1C30F4B576CE7 中已有的 Controller 操作

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM