I am trying to pass through a value from my view to my controller based on what I click on, using HTML.ActionLink. For example, if I click on 'Soccer' then I want the value 'Soccer' to be passed to the controller, which will then change what is being displayed. Currently when I click on the sport name nothing happens, and when I debug the project, the sport name parameter in the controller is null, which means that the value has not been passed to the controller.
This is the code from the view:
@foreach (var item in Model.Sports)
{
<p>
@*@Html.ActionLink(@item, "Index", "Home")*@
@Html.ActionLink(@item, "Index", "Home")
</p>
}
</div>
<div class="col-md-4">
@foreach (var Coupon in Model.CurrentCoupons())
{
<p>
Coupon: @Coupon.CouponName <br />
Event Count: @Coupon.EventsCollection.Count
<br />
Event:
@foreach (var Event in Coupon.EventsCollection)
{
@Event.Name;<br /><br />
}
@foreach (var Market in Coupon.MarketList)
{
@Html.ActionLink(@Market.Name, "Index", "Home")<br />
}
</p>
<table>
@foreach (var Selection in Coupon.SelectionList)
{
<tr>
<td width="400">@Selection.Name</td>
<td>@Selection.PriceFixed</td>
</tr>
}
</table>
}
Controller:
public class HomeController : Controller
{
public ActionResult Index(string sportName)
{
ViewBag.Title = sportName;
return View(new TestDataHelper(sportName));
}
}