Bla*_*ell 7 c# asp.net asp.net-mvc asp.net-web-api asp.net-core
我知道WEB API和MVC之间的区别.我也知道在asp.net core 1.0中只有一种类型的控制器可以同时处理MVC和API.
但是,我最近一直在观看很多ASP.NET MVC教程,并注意到教师在Controllers文件夹中创建了一个Api文件夹.
这样他就分出了主要处理ViewModel的所有MVC控制器,并使用View函数告诉MVC哪个视图要从主要处理Dtos的API控制器中显示,并且似乎严格处理数据,而不是视图.
您会认为在MVC应用程序中不会有API控制器吗?特别是因为在核心1.0中你继承了一个类:'Controller'.但是我想当你整合像Angular和Kendo UI这样的前端框架来制作很多ajax请求时,你通常希望通过api来完成它们.
这是我目前的理解:
严格使用MVC控制器仅用于MVC,例如指定应显示哪个视图以及传递视图模型.
使用API控制器主要用于ajax调用,从不用于视图初始加载,从不用于MVC CRUD模式.
在谈到这一点时,有人能给我一个更好的标准吗?
And*_*atz 12
正如您所指出的,两者之间的.Net Core没有区别,创建"API"文件夹纯粹是为了项目组织,但控制器的类型相同.
如果你想要一个相当简单的规则,我会说任何返回JSON/XML /数据的方法(没有表示信息)应该是一个"API"控制器,任何返回HTML的东西都应该是一个"MVC"控制器,或者不是API文件夹.
| 归档时间: |
|
| 查看次数: |
11268 次 |
| 最近记录: |