It seems simple. In an MVC view page you have an @Html.ActionLink with parameters for action, controller & route values:
@Html.ActionLink("Some text","Action","Controller", new {id=1})
but instead of rendering the text with a link to the action, it renders a link with some weird URL that isn't what you want at all.
If you use intellisense to look at the overloads for ActionLink, you'll see that the overload you've got is interpreting new {id=1}
as html attributes not as route values. You need the overload with one more parameter, which can be null:
@Html.ActionLink("Some text","Action","Controller", new {id=1}, null)
And then it works.