我有像facebook组一样的观点。如果用户当前未加入群组,则会显示加入按钮。 我用这行来从按钮
调用joinCommunity()动作<button>@Html.ActionLink("Join", "joinCommunity", new { id = @Model.Community.CommunityID })</button>
但它没有指向我的控制器中的joinCommunity()操作。 这是我在控制器中的功能。
[HttpPost]
public ActionResult joinCommunity(int CommID)
{
var UseriD = db.Users.Where(u => u.UserName == User.Identity.Name).SingleOrDefault().Id;
var newUser = new CommunityUser()
{
UserID = UseriD,
CommunityID = CommID
};
db.CommunityUsers.Add(newUser);
db.SaveChanges();
return View("Community");
}
我没有得到(断点)这个功能。
答案 0 :(得分:0)
您的操作类型为[HttpPost]
。但ActionLink会创建<a>
元素,用于[HttpGet]
。
尝试删除[HttpPost]
。
但如果该特定操作用于发布目的,请将该属性保留在那里并为[HttpGet]
创建另一个操作。
如果您想发布数据,请不要使用,不要使用ActionLink。添加如下表单:
@using (Html.BeginForm("joinCommunity", "[CONTROLLER_NAME]", FormMethod.Post))
{
<input type="hidden" name="CommID" value="@Model.Community.CommunityID" />
<br/>
<input type="submit" value="Join" />
}