Могу ли я использовать "@Url.Action" в C# (внутри страницы.aspx)

Привет я пытаюсь добавить "@Url.Action" в C#.net (WebForms), чтобы разрешить конфликт путей на сервере и в моей локальной системе с помощью файла конфигурации. У меня была эта строка, и в этом я пытаюсь использовать url.action в свойстве href.

<a href="/User/Add"><span class="glyphicon glyphicon-plus"></span>&nbsp;Add User</a>

мой вопрос, как использовать этот метод url.action.......

я пытался как

href="@Url.Action("Add","User")"

но это не принимает.... спасибо..

7 ответов

Решение

Насколько я знаю, Url.Action предназначен только для.NET MVC, а не для.NET WebForms - в WebForms нет действий и контроллеров.

Более того, из ваших комментариев кажется, что термины C# и MVC должны быть разъяснены. C# это язык программирования. Вы можете использовать C# с обеими платформами.NET MVC и.NET WebForms. Вы можете использовать C# как в файлах.cshtml (благодаря движку Razor View), так и на страницах ASPX.

Используйте следующее:

<%=new System.Web.Mvc.UrlHelper(this.Request.RequestContext).Action("Index", "DetailedConferenceReport") %>

Или

Просто используйте это

<a class="btn btn-warning " href="../DetailedConferenceReport/Index">                                    
    <i class="fa fa-backward"></i>
</a>

Эта мысль работает для меня, я использовал ссылку таким образом

<a href="@Url.Action("LogOut", "Account")">hi </a>

И это работает для меня. Можете ли вы скопировать HTML из источника страницы и проверить?

Вы можете использовать <%=Url.Action("index", "Home")%> в веб-форме Asp.net и @Url.Action("index", "Home") в Asp.net MVC

Мы можем использовать ResolveUrl вместо этого.. Это прекрасно работает в C#

Обычно вам просто нужно добавить

Microsoft.AspNet.Razor

который по зависимости включает в себя все остальные, что ему нужно

Я думаю, что у вас могут быть проблемы с цитатами, попробуйте использовать <a href='@Url.Action("Add", "User")'><span class="glyphicon glyphicon-plus"></span>&nbsp;Add User</a>

Поскольку кажется, что вы используете.aspx, а не.cshtml ("Razor"), вам нужно будет использовать

<a href="<%= Url.Action("Add","User") %>"> ... </a>

Примечание: это для приложения MVC

Вы можете проверить "специальные" теги ASP.NET для быстрого перехода к тегам.aspx и https://msdn.microsoft.com/en-us/library/fy30at8h(v=vs.100).aspx для полная документация MSDN по синтаксису.aspx.

Другие вопросы по тегам