2013-12-19 50 views
1

在控制器中,我添加了一些邏輯,右鍵單擊該控制器並添加了一個局部視圖。爲什麼return View()不會返回我添加的視圖。我點擊去查看 - >顯示該視圖時,檢查了右擊控制器。但通過使用代碼return view()不返回我的看法。它要求視圖的完整路徑。爲什麼我的控制器要求完整路徑而不是無mv3參數的直接返回語句?

return View("/Areas/Admin/Views/Search/ShowResult.ascx"); -->working 
return View(); -->not working 

我需要消除完整路徑。請告訴我爲什麼我的視圖不返回使用此返回視圖()。

編輯:

<%: Html.ActionLink("search", "index", new { Area = "admin", Controller = "search" }, new { style = "text-decoration: none" })%> 

AdminAreaRegistration.cs

public class AdminAreaRegistration : AreaRegistration 
    { 
     public override string AreaName { 
      get { 
       return "Admin"; 
      } 
     } 

     public override void RegisterArea(AreaRegistrationContext context) { 
      context.MapRoute(
       "Admin_default", 
       "Admin/{controller}/{action}/{id}", 
       new { area = "admin",action = "index", id = UrlParameter.Optional } 
      ); 
     } 
    } 

Global.ascx.cs

public static void RegisterRoutes(RouteCollection routes) 
     { 


      AreaRegistration.RegisterAllAreas(); 
} 

控制器:

[HttpPost] 
     public ActionResult ShowResult(FormCollection collection) 
     { 
return View("/Areas/Admin/Views/Search/ShowResult.ascx"); //working properly 
return View();//not working any one tell me ... 
} 

返回查看(); ---------------不工作要求全path.please告訴我

感謝

+1

你可以嘗試'返回Partial()'而不是'返回View()'。?只是一個實驗。 – shashwat

+0

你的Controller和Action方法的名稱是什麼? –

+1

您是否在區域註冊文件(區域文件夾內)中註冊了您的區域路線?什麼是視圖引擎錯誤的輸出是哪種搜索方式檢查它? (如搜索到的位置〜/ Views/Shared〜Views/Admin/Shared等) – STO

回答

0

如若ActionMethod和查看的不是名稱名稱與你使用return View()相同嗎?您的ActionMethod名稱是ShowResult(),並且該視圖名爲「Test.aspx」。視圖引擎無法創建該鏈接,因此它要求使用返回視圖的完全限定名稱,您必須將方法名稱更改爲測試或將視圖名稱更改爲ShowResult。

+0

對不起,測試我給test.aspx像上面那樣。我創建視圖名稱爲ShowResult.ascx only.not返回查看通過使用返回視圖(); – user3106578

+0

請給我解決這個問題,我想從最後一天起 – user3106578

相關問題