web-services - 我可以将 ASP.NET MVC3 专门用作 RESTful Web 服务吗?

标签 web-services asp.net-mvc-3 sencha-touch

我正在构建一个只读 我们本地教会的应用程序。

我们使用 Vimeo 来托管我们所有的视频,我想将我们的 Vimeo 视频以及我们的 RSS 提要集成到我们的网络应用程序中。

应用程序中的其余“内容”将是静态“信息”以及联系表格。

我的问题是,仅使用 ASP.NET MVC3(减去“V”)将 JSON 驱动到我们的 Web 应用程序是否符合犹太教规?

最佳答案

是的,这很好用。只需返回一个 JsonResult。

这是我在生产中使用的示例:

 public partial class StudentController : BaseController {
    public StudentController(RESTContext portalContext)
        : base(portalContext) { }

    [HttpGet, Url("organizations/{organizationId?}/students")]
    public virtual JsonResult List(Guid? organizationId) {
        if (organizationId != RESTContext.OrganizationId)
            throw new HttpNotAuthorizedException();

        var query = RESTContext.GetQuery<IQuery<StudentCasesReport>>()
            .Where(x => x.OrganizationId, organizationId)
            .OrderBy(x => x.LastName, SortOrder.Ascending);
        var cases = query.Execute(IsolationLevel.ReadUncommitted);

        return Json(cases, JsonRequestBehavior.AllowGet);
    }

    [HttpGet, Url("organizations/{organizationId?}/students/{studentId?}")]
    public virtual JsonResult Get(Guid? organizationId, Guid? studentId) {
        if (studentId.IsNull())
            throw new HttpNotFoundExecption();

        if (organizationId != RESTContext.OrganizationId)
            throw new HttpNotModifiedException();

        var query = RESTContext.GetQuery<IQuery<StudentCasesReport>>()
            .Where(x => x.OrganizationId, organizationId)
            .Where(x => x.StudentCaseId, studentId)
            .OrderBy(x => x.LastName, SortOrder.Ascending);
        var cases = query.Execute(IsolationLevel.ReadUncommitted).FirstOrDefault();

        if (cases.IsNull())
            throw new HttpNotFoundExecption();

        return Json(cases, JsonRequestBehavior.AllowGet);
    }
}

关于web-services - 我可以将 ASP.NET MVC3 专门用作 RESTful Web 服务吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6216740/

相关文章:

java - Jersey servlet 映射困惑

javascript - Extjs 平均存储所有字段

javascript - Sencha touch 2 模型关联保存不正确的数据来存储

java - 网络服务中的客户详细信息

java - 使用 BeanUtils 自定义将 XMLGregorianCalendar 转换为日期

c# - "The type arguments cannot be inferred from the usage"在 View 中使用标准助手的自定义助手

jquery - Razor 和 jQuery,附加表格

html - 在表格中设置 TD 中的 div 宽度

java - 为 JAX-WS 客户端设置 SSL

asp.net-mvc - ASP.NET MVC 必须匹配验证属性