2015-11-26 52 views
1

在下面的鏈接中,我試圖訪問標有「商家」的鏈接,而標有「追隨者」的鏈接正常工作。他們都訪問相同的控制器和查看,但標有「商家」不起作用。這裏很困惑。未找到該視圖或其主人

 <p class="lead">Register a @Html.ActionLink("Merchant", "Register", "Account", new { role = "Merchant" }, null) or Register as a @Html.ActionLink("Follower", "Register", "Account")</p> 

我做出了改變前些天嘗試通過「角色」,這似乎已經打破對我來說。我確實在我的帳戶控制器中更改了註冊方法以反映這些更改。

public ActionResult Register(string role) 
    { 
     var model = new RegisterViewModel 
      { 
       Name = role 
      }; 
    return View("Register", role); 
    } 

我還添加了另一條路線的配置,以適應這種變化:

routes.MapRoute(
name: "Register", 
url: "Account/Register/{role}", 
defaults: new { controller = "Account", action = "Register" } 
    ); 

這方面的工作了一段時間,並試圖在這裏列出的其他類似的例子,但這個問題似乎是別的東西,我無法看到。

路徑,我得到的錯誤,並且是在賬戶確實存在的文件夾:

~/Views/Account/register.aspx 
    ~/Views/Account/register.ascx 
    ~/Views/Shared/register.aspx 
    ~/Views/Shared/register.ascx 
    ~/Views/Account/Merchant.master 
    ~/Views/Shared/Merchant.master 
    ~/Views/Account/Merchant.cshtml 
    ~/Views/Account/Merchant.vbhtml 
    ~/Views/Shared/Merchant.cshtml 
    ~/Views/Shared/Merchant.vbhtml 

回答

0

看起來像我有註冊方法錯了,添加對象PARAM需要。

 public ActionResult Register(string role) 
    { 
     var model = new RegisterViewModel 
      { 
       Name = role 
      }; 
     //Are these parameters accurate? 
     return View("Register", new RegisterViewModel { role = role }); 
    } 
0

由於動作方法的名字和視圖名稱是一樣的,你不需要明確的提及視圖名稱,你可以通過創建模型如下查看:

public ActionResult Register(string role) 
{ 
    var model = new RegisterViewModel 
     { 
      Name = role 
     }; 

    return View(model); 
} 
相關問題