相关疑难解决方法(0)

ASP.NET MVC 6中的MVC控制器和Web API控制器有什么区别?

在ASP.NET 5 MVC 6中,Microsoft将普通的MVC控制器类(Controller)与Web Api控制器类(ApiController)合并.现在只有一个Controller继承的类,其中包括WebApi的功能.

所以现在区分MVC和WebApi控制器并不是那么简单.两者都继承自Controller班级.我能发现的唯一的区别是的WebAPI的路由信息仍然由属性提供HttpGet,HttpPost,HttpPutHttpDelete.但现在可以使用属性路由对MVC控制器执行相同操作,只需使用不同的属性.

即使这些功能似乎已合并.MVC控制器现在也支持内容协商.

具体问题是:

是否仍然存在真正的差异,或者仅仅是指定路线的方式?现在哪种方式是创建网络应用的首选方式?

(差不多)空的MVC控制器:

public class HomeController : Controller
{
    public List<Person> Index()
    {
        return new List<Person>()
        {
            new Person() {Firstname = "test1", Lastname = "test2"},
            new Person() {Firstname = "test3", Lastname = "test4"}
        };
    }

    public IActionResult About()
    {
        ViewData["Message"] = "Your application description page.";

        return View();
    }

    public IActionResult Contact()
    {
        ViewData["Message"] = "Your contact page."; …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc asp.net-core-mvc asp.net-core

27
推荐指数
2
解决办法
2万
查看次数