加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – MVC3 Action作为一个简单的Web服务

发布时间:2020-12-16 06:46:55 所属栏目:asp.Net 来源:网络整理
导读:我怎么能将此操作用作服务? public class HomeController : Controller { public string GetSomeValue(){ return "This is some value"; } } 如果我导航到这个URL,http://mysite.com/Home/GetSomeValue,它返回一个字符串,没有任何类型的HTML或标记. 那么,是
我怎么能将此操作用作服务?

public class HomeController : Controller {

     public string GetSomeValue(){
         return "This is some value";
     }
 }

如果我导航到这个URL,http://mysite.com/Home/GetSomeValue,它返回一个字符串,没有任何类型的HTML或标记.

那么,是什么让我不能使用这种方法作为返回有意义的服务,比如json,我可以从任何地方打电话?

如果这是可能的,我将如何做到这一点(从另一个asp.net网站背后的代码说)?

提前致谢.

解决方法

100%这样做没有错.

一个示例应用程序 – NerdDinner – 做同样的事情来安抚晚餐.

控制器见http://nerddinner.codeplex.com/SourceControl/changeset/view/70027#874260,javascript文件见http://nerddinner.codeplex.com/SourceControl/changeset/view/70027#874293(查找NerdDinner.FindMostPopularDinners)

例如

C#

// AJAX: /Search/GetMostPopularDinners
    // AJAX: /Search/GetMostPopularDinners?limit=5

    [HttpPost]
    public ActionResult GetMostPopularDinners(int? limit)
    {
        var dinners = dinnerRepository.FindUpcomingDinners();

        // Default the limit to 40,if not supplied.
        if (!limit.HasValue)
            limit = 40;

        var mostPopularDinners = from dinner in dinners
                                 orderby dinner.RSVPs.Count descending
                                 select dinner;

        var jsonDinners =
            mostPopularDinners.Take(limit.Value).AsEnumerable()
            .Select(item => JsonDinnerFromDinner(item));

        return Json(jsonDinners.ToList());
    }

JS

NerdDinner.FindMostPopularDinners = function (limit) {
    $.post("/Search/GetMostPopularDinners",{ "limit": limit },NerdDinner._renderDinners,"json");
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读