ASP.NET MVC从c#代码创建绝对URL

Sha*_*ean 25 asp.net-mvc

如何从c#代码生成绝对URL?

我想生成一个这样的网址:localhost/{controller}/{action}/{id}.有没有办法在c#中如何在视图中完成它?

它不会在控制器内部生成,而是在ViewModel内生成.

Sha*_*ean 70

string absUrl = Url.Action("Index", "Products", null, Request.Url.Scheme);
Run Code Online (Sandbox Code Playgroud)

只需添加Request.Url.Scheme.这样做是为url添加一个协议,强制它生成一个绝对URL.

  • 如果你想使用Url.Action("Index")重载生成一个完全限定的url(你没有指定控制器),只需传入**null**作为控制器参数.这导致:`Url.Action("Index",null,null,Request.Url.Scheme)`. (3认同)