2014-10-07 34 views
1

我有一個ASP.NET MVC解決方案,我有一個「創建用戶」按鈕的工具欄。 我的系統中有幾個實體可以添加/創建用戶。根據您添加用戶的實體,目標頁面是不同的。 FX。如何在不同的視圖中重複使用不同路徑的部分控件?

我有一個「部門」實體,當我從該實體添加/創建用戶時,我需要在創建後轉到「EditDepartment」。

當我在「頻道」實體,並從該實體添加/創建用戶時,我需要在創建後轉到「EditChannel」。

我想重用我的「CreateUser」部分控件,但是如何在每次創建後指定目標 - 注入路由?這是如何完成的?我想避免一個怪物「如果」的聲明來確定目的地。

+0

那麼你是否在從不同的實體頁面添加/創建用戶時調用相同的操作方法? – 2014-10-07 12:09:12

+0

當您在父項中創建局部視圖時,您可以傳遞要在創建後重定向的網址。 – lopezbertoni 2014-10-07 12:23:26

+0

@lopezbertoni如何在沒有模型綁定的情況下將視圖中的任何數據傳遞給控制器​​? – 2014-10-07 12:24:56

回答

0

在放置CreateUser局部視圖的每個視圖中,可以添加一個隱藏字段來引用要重定向的動作。然後在你的CREATEUSER行動可以從請求

查看

@Html.Hidden("Destination", "EditDepartment") 
@Html.Partial("CreateUser") 

控制器

public ActionResult Create(UserViewModel viewModel) 
{ 
    string destination = Request["Destination"]; 
    //Create logic... 

    return Redirect(destination); 
} 

我不知道這是否是最好的方式,只是在第一件事情來獲得該字段的值在我心裏。

相關問題