设置 HttpContext.Current.Request.Url.Host

Pos*_*Guy 4 asp.net

我需要替换 Uri 的主机部分

HttpContext.Current.Request.Url.Host = "newDomain";

你不能设置主机。有没有一种快速、简单的方法可以对 Uri 执行此操作,以便重用它来重定向到其他地方?

Gre*_*ech 5

使用该类UriBuilder来更改 URI,例如

var original = HttpContext.Current.Request.Url;
var changed = (new UriBuilder(original) { Host = "newDomain" }).Uri;
Run Code Online (Sandbox Code Playgroud)

URI 是棘手的小野兽,具有大量您可能不知道或不期望的语义,因此除非绝对必要,否则不要对它们使用字符串函数。