asp.net-mvc – Web API和ASP MVC之间的主要区别是什么
标题真的总结了我的问题.我已经使用了这两种技术,但我不确定哪种技术与另一种技术有很大不同.在本质上:
在设计宁静的Web应用程序时,在选择ASP MVC或Web API时应考虑哪些标准和/或指导? 解决方法
目的
ASP.NET MVC专注于简化HTML的输出. ASP.NET Web API专注于简化原始数据的输出. 在WebForms世界中,ASP.NET MVC将等同于.aspx页面,ASP.NET Web API将等同于.asmx. 虽然没有什么不可能 虽然可以使Web API输出HTML和MVC输出原始数据,但您还需要额外的工作.例如,在Web API中进行内容协商期间创建其他类来处理text / html,或者添加逻辑来处理MVC中的OData查询. 假设 MVC和Web API的默认假设也不同.默认情况下,MVC假定用户提交的数据可以来自多个源,无论是查询字符串还是表单. 默认情况下,Web API假定基本类型来自查询字符串,而非基本类型来自表单.它还假设您只想在没有缓存的情况下读取表单主体,以降低内存使用率并提高性能. 违背默认值需要额外的工作,对我来说,根本没有意义. 编辑: 此外,默认情况下,MVC的JsonResult阻止GET AJAX请求以防止CSRF,而Web API默认允许GET AJAX请求. MVC 6更新 MVC 6统一了MVC和Web API,允许您像在MVC中一样返回ViewResult,或者像Web API一样返回对象,框架将负责内容协商,为您创建HTML,JSON或XML.通过使用其自定义管道而不是System.Web提供的内容,较低的内存使用量也会到达MVC. 所以,未来,MVC和Web API之间没有区别. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ASP.Net MVC帮助重构
- asp.net – 使用带有模拟的Windows身份验证的Web应用程序的
- 使用websocket-sharp来创建c#版本的websocket服务
- asp.net – 无法在Page回调中调用Response Redirect?
- ASP.Net 分页控件源码
- asp.net – 使用Web.Config设置我的SQL数据库连接字符串?
- entity-framework – 如何将OData查询与DTO映射到EF实体?
- asp.net – 在jQuery对话框中的窗体中,MVC中通常采用的方法
- asp.net-mvc – 带有淘汰赛的EditorFor HTML Helper
- asp.net – Telerik RadGrid – 如何默认编辑模式?