在asp.net-mvc控制器中,生成URL的最佳方法是什么?
本文关键字:最佳 方法 是什么 URL 生成 net-mvc asp 控制器 | 更新日期: 2023-09-27 17:53:19
现在我把
RequestContext
并将其传递给UrlHelper,如下所示:
UrlHelper u = new UrlHelper(context);
string hrSyncUrl = u.Action("Update", "Person");
,但问题是,这似乎返回:
/Person/Update
代替:
http://www.mysite.com/Person/Update
所以,给定一个控制器和动作名称,我怎么能从控制器内部生成一个完整的url ?
我需要这个的原因是我正在生成一封电子邮件,所以我需要完整的url来放入该电子邮件的正文
通过使用适当的重载:
string hrSyncUrl = u.Action("Update", "Person", null, "http");
为了避免硬编码协议,你可以从请求中获取它:
var protocol = context.HttpContext.Request.Url.Scheme;
string hrSyncUrl = u.Action("Update", "Person", null, protocol);
参见ASP。. NET MVC从c#代码创建绝对url