![](/img/trans.png)
[英]How to send model from View to bool method with AJAX in MVC ASP.NET
[英]Return bool from view/ActionLink to method - Asp.Net MVC
我必須在內部傳遞一個布爾值-> "@Html.ActionLink(" ", "Like", new { id = Model.Id @*, Pass bool value here *@}".
我的模型不包含布爾值屬性,也不能添加它(首先是數據庫)或用ViewModel替換模型。是否仍然可以通過某種方式將bool值傳遞給我的方法?
我的方法Like簽名接受一個Guid Id
和一個bool
參數。
我能以某種方式通過bool:
@Html.ActionLink("Like!", "Like", new { id = Model.Id, @* true bool*@}
@Html.ActionLink("Disike!", "Like", new { id = Model.Id, @*false bool*@}
至:
public ActionResult Like(Guid id, bool getBool)
{
if (getBool == true){
return Content("Liked!");
}else if (getBool == false){
return Content("Disiked!");
}
任何想法如何將布爾值從視圖傳遞到控制器?
您通過傳遞模型ID的方式傳遞布爾值:
@Html.ActionLink("Like!", "Like", new { id = Model.Id, getBool = true})
@Html.ActionLink("Disike!", "Like", new { id = Model.Id, getBool = false})
最終, Model.Id
沒什么特別的。 這只是一個Guid
。 傳入的值不必特別來自任何地方。 隨便傳。
沒有這樣的事情“我不能用ViewModel替換模型”。 這就是ViewModel的想法,即制作一個與數據庫模型不同並適合視圖要求的模型。
例如,如果您的數據庫中有此模型:
public class Person
{
public int PersonID { get; set;}
public string Name { get; set;}
public string password { get; set;}
}
並且您想要在視圖中驗證密碼,而無需在模型中成為驗證密碼的屬性,您可以在ViewModel類中執行以下操作:
public class PersonVM :Person
{
public string verifyPassword { get; set;}
}
請注意,並非總會繼承VM中的原始模型。
創建VM后,您將創建一個視圖,該視圖的模型就是您為該視圖創建的VM。 這樣,您就可以通過視圖並獲取任何其他信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.