如果ActionResult是mvc中的一个类,那么我们如何在不使用它的对象的情况下直接使用它呢?

时间:2016-02-16 01:01:00

标签: asp.net-mvc

public ActionResult Demo()
{
    return View(); 
}

在这种情况下,我真的无法理解ActionResult的用法。 ActionResult是一个抽象类,我们使用ActionResult的diff方法而不创建它的对象。 逻辑上它是如何在内部工作的?

2 个答案:

答案 0 :(得分:0)

View()是一个常规函数,它返回ActionResult的一些具体子类(在本例中为ViewResult)。

答案 1 :(得分:0)

默认情况下,框架允许我们返回对请求的各种类型的响应。 ActionResult是可以返回给客户端的各种其他类继承的抽象类。所以这里我们返回超类类型,为开发人员提供灵活性,以决定提供哪种类型的结果。

此链接描述了所有内容:

https://msdn.microsoft.com/en-us/library/system.web.mvc.actionresult(v=vs.118).aspx