2010-07-21 53 views
0

我有一個操作Create()在我的BooksController上,我創建一個新的Book類。創建過程的一部分是添加一個或多個作者,其中Author是一個類。mvc如何返回到調用RedirectToAction(..)的動作?

下面是我設想這樣的工作方式:

當用戶點擊「創建一個新的書」,他們將返回創建視圖。

用戶可以隨時點擊「添加作者」按鈕。 「添加作者」帖子並保存會話中的所有數據,然後RedirectToAction(「Search」,「Author」,new {returnController =「Books」returnAction =「AddAuthor」}(pseudo)

這將返回一個AuthorId給AddAuthor Action,它讓新的Book類脫離會話,與作者一起更新,並重定向回Create()

我的問題 - 這是處理'返回'與MVC的最佳方式?如果我想要作者搜索包括一個'添加新的作者'選項?我想返回到一個網址,返回到第二個URL的ID似乎很混亂,可以使用一些幫助謝謝。

回答

0

我建議你讓你的AddAuthor控制器作者的可空ID。

因此,當你有空ID時,你可以重定向到一個動作來創建一個作者,它將在稍後返回創建的作者ID,然後將其添加到書中。

而當你通過身份證,它只會將作者添加到指定的書。

+0

但是如果有現有的作者,我想要從列表中選擇一個還是創建一個新的選項?我不確定這將如何處理 – 2010-07-21 14:48:39

+0

如果你有現有的作者,並選擇它,那麼你傳遞一個作者的ID,它被添加到書中,如果你沒有作者,並選擇創建新的,你傳遞null而不是id,然後在你的控制器中檢查值是否爲null,如果值爲null,你去創建一個新的作者,然後將它添加到書中,如果value不是null,而是一個數字(現有作者的ID),那麼它意味着你已經選擇了一個現有的作者,你只需要將它添加到書籍信息。 – 2010-07-22 07:46:16

相關問題