首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC ActionResult调用另一个ActionResult

MVC ActionResult调用另一个ActionResult
EN

Stack Overflow用户
提问于 2012-12-20 22:10:33
回答 2查看 8.8K关注 0票数 6

我有一个ActionResult呼叫另一个ActionResult。

我在case语句中调用了一个ActionResult,但它不起作用。以下是我所拥有的:

代码语言:javascript
复制
   public ActionResult GetReport(string pNum)
   {
   ....

        switch (methodId)
        {
          case 1:
          case 5:                
           {
             var actionResult =  GetP1Report("33996",false)  as ActionResult;
              break;
           }
         }

         return actionResult; 
       }

我得到以下错误:“actionResult”在当前上下文中不存在

如果我这样做,它可以工作,但不完全符合我的需要:

代码语言:javascript
复制
    public ActionResult GetReport(string pNum)
   {
      ....

       var actionResult =  GetP1Report("33996",false)  as ActionResult;

        switch (methodId)
        {
          case 1:
          case 5:                
           {
             // var actionResult =  GetP1Report("33996",false)  as ActionResult;
              break;
           }
         }

         return actionResult; 
       }

如何使actionResult在我的case语句中工作,以便当我这样做时它是可见的。

代码语言:javascript
复制
    return actionResult
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-20 22:12:18

只需首先声明它(我猜它有一个默认值),在开关语句之外:

代码语言:javascript
复制
 ActionResult actionResult = null;
 switch (methodId)
    {
      case 1:
      case 5: // PVT, PVT-WMT
      {
          actionResult =  GetP1Report("33996",false)  as ActionResult;
          break;
       }
     }

 return actionResult ?? new View(); 

注意:我将?? new View()添加为默认值,以防任何情况都没有将任何东西分配给actionResult -根据需要修改。

票数 8
EN

Stack Overflow用户

发布于 2012-12-20 22:17:15

问题是范围是可变的。德巴斯曼几乎说对了..。这样做:

代码语言:javascript
复制
public ActionResult GetReport(string pNum)
{
....

    ActionResult actionResult = new View(); // This would typically be assigned a
                                        // default ActionResult
    switch (methodId)
    {
        case 1:
        case 5:                
        {
            actionResult = GetP1Report("33996",false) as ActionResult;
            break;
         }
     }

     return actionResult; 
 }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13981371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档