如何在C#的HttpRequestMessage URL中动态替换参数?
C#中动态设置URL参数的几种可行方法
字符串插值(C# 6+推荐)
写法直观,直接在字符串里嵌入变量,可读性拉满:int targetId = 63847; // 这里替换成你动态获取的ID值 var requestUrl = $"http://MyService/Ids/{targetId}/create"; using (var request = new HttpRequestMessage(new HttpMethod("POST"), requestUrl)) { // 后续请求逻辑 }string.Format方法
兼容更早的C#版本,通过占位符{0}实现参数替换:int targetId = 63847; var requestUrl = string.Format("http://MyService/Ids/{0}/create", targetId); using (var request = new HttpRequestMessage(new HttpMethod("POST"), requestUrl)) { // 后续请求逻辑 }带URL编码的严谨写法
如果你的ID可能包含特殊字符(比如字母、符号,不只是纯数字),必须用Uri.EscapeDataString对参数编码,避免URL格式出错:string targetId = "63847_abc"; // 示例带特殊字符的ID var encodedId = Uri.EscapeDataString(targetId); var requestUrl = $"http://MyService/Ids/{encodedId}/create"; using (var request = new HttpRequestMessage(new HttpMethod("POST"), requestUrl)) { // 后续请求逻辑 }
内容的提问来源于stack exchange,提问作者tRuEsAtM
相关产品推荐
相关产品推荐

