Cha*_*ell 5 web-services sencha-touch asp.net-mvc-3
我正在为我们当地的教堂建立一个只读的sencha-touch应用程序.
我们使用Vimeo来托管我们的所有视频,并且我希望将我们的Vimeo视频以及我们的RSS提要集成到我们的网络应用程序中.
应用程序中其余的"内容"将是静态"信息"以及联系表单.
我的问题是,仅仅使用ASP.NET MVC3(减去"V")将JSON驱动到我们的Web应用程序是否犹豫不决?
Chr*_*ken 10
是的,这很好用.只需返回一个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);
}
}
Run Code Online (Sandbox Code Playgroud)