我有一個對象視圖,包含該視圖上的數據和按鈕。用戶可以查看對象信息並單擊該按鈕以轉到新的查看錶單,以便他可以輸入信息來創建項目。我的挑戰是,我如何將對象的ID附加到先前的視圖上,以將它與它們創建和提交的信息相關聯並附加到它們上面?MVC3 actionlink將ID附加到對象
回答
@Html.ActionLink("Add","AddNotes","Object",new {@id=5},null)
這將創造e帶有查詢字符串?id=5
的標籤。 (您可以使用視圖中的動態值替換硬編碼5)
有一個屬性可以爲創建表單保留3210的值。
public class CreateNoteViewModel
{
public int ParentId { set;get;}
public string Note { set;get;}
//Other properties also
}
在您的GET閱讀本action
方法,創建第二視圖,設置視圖模型/型號的該屬性的值。
public ActionResult AddNotes(int id)
{
var model=new CreateNoteViewModel();
model.ParentId=id;
return View(model);
}
而在您的強類型視圖中,請將此值保存在隱藏變量中。
@model CreateNoteViewModel
@using(Html.BeginForm())
{
@Html.TextBoxFor(Model.Note)
@Html.HiddenFor(Model.ParentId)
<input type="submit" />
}
現在,在您HttpPost
動作,你可以從您發佈的模型的ParentId屬性來獲取對象ID
[HttpPost]
public ActionResult AddNotes(CreateNoteViewModel model)
{
if(ModelState.IsValid()
{
//check for model.ParentId here
// Save and redirect
}
return View(model);
}
我正在研究此解決方案。如果我成功了,我會感謝你的回答。感謝代碼。 (: –
它是否有關係,不管它是否設置;得到;或得到;設置;我已得到;設置; –
@HelloJonnyOh:那個順序沒有關係 – Shyju
您可以使用隱藏輸入& viewdata,PSEUDOCODE。 注意您可能不得不使用字符串查看數據並將其轉換回您的控制器中的ID。有關ViewData/ViewBag(和缺點)的基本說明,請參閱this link。
您需要將數據傳遞到第一個操作的視圖(控制器) Controller基類有一個「ViewData」字典屬性,可用於填充要傳遞給View的數據。使用鍵/值模式將對象添加到ViewData字典中。
控制器
public ActionResult yourfirstaction()
{
//assign and pass the key/value to the view using viewdata
ViewData["somethingid"] = ActualPropertyId;
鑑於 - 獲取的價值用它來與隱藏的輸入回傳給下一個控制器來呈現下一個視圖
<input type="hidden" name="somethingid" value='@ViewData["somethingid"]' id="somethingid" />
控制器
public ActionResult yournextaction(string somethingid)
{
//use the id
int ActualPropertyId = Convert.ToInt32(somethingid);
我會在哪裏放置隱藏的輸入?我假定用戶來自的頁面... –
是的,在您的視圖中,您的按鈕正下方。 – user1166147
我想要傳遞的屬性的實際名稱應該放在哪裏?你可以編輯你的僞代碼並替換爲「ActualPropertyId」? –
- 1. 將sfDoctrineActAsTaggablePlugin附加到對象
- 2. MVC3的ActionLink在MVC3
- 3. 如何將SQLite ID附加到Android中的微調對象?
- 4. MVC3 ActionLink夢魘
- 5. WPF將VisualState附加到對象屬性
- 6. 如何將圖像附加到對象?
- 7. 將對象附加到.txt文件
- 8. rails3.1 - 將追查附加到activerecord對象
- 9. 將原型附加到JavaScript對象
- 10. 將分析對象附加到數組
- 11. 將類對象附加到列表中
- 12. 將HTML附加到JQuery響應對象
- 13. 將計數變量附加到對象
- 14. 如何將對象附加到NSCursor? OSX
- 15. CoffeeScript將對象附加到DOM
- 16. 將整個jQuery對象附加到html
- 17. 將對象附加到會話中
- 18. 將字典對象附加到UITableViewCell
- 19. 將對象附加到Node.js進程
- 20. 如何將ID /服務器ID保存到附件對象?
- 21. 如何將一個項目值添加到ActionLink(MVC3 Grid)
- 22. 將Uniqe ID(UUID)添加到對象
- 23. MVC3 - Ajax actionlink - OnBegin,onComplete
- 24. 如何將事件附加到動態對象或COM對象
- 25. localStorage - 將對象附加到對象數組
- 26. 如何將對象附加到Flash中的旋轉對象?
- 27. Python - 將JSON對象附加到存在的JSON對象
- 28. 將Spring Multipart對象附加到Java郵件對象
- 29. 添加ID到raphael對象
- 30. 將脫附的對象附加到上下文中
可以顯示一些代碼?這將有助於解決這個問題 –
我現在從我的iPad發送,所以現在不在話下。你知道一個很好的解決方案來適應這個概念嗎? –