url-string中的斜杠(c#)

时间:2011-08-08 18:50:58

标签: c# string url backslash

我写入一个字符串变量url:

var path = @"http://46.146.52.139/" + @"TourService/" + TourName + @"/" + TourName + num + ".mp3";

我期待

http://46.146.142.129/TourService/MyTour/MyTour21.mp3

但是我得到了

http:\/\/46.146.142.129\/TourService\/MyTour\/MyTour21.mp3

如何从URL中丢弃反斜杠? 我尝试了不同的变种,但没有成功

完整方法

public string GetAudioPath(string objectname)
        {
            var num = _databaseConnector.GetNumOfAudio(objectname);
            var path = "http://46.146.142.199/" + "TourService/" + TourName + "/" + TourName + num + ".mp3";
            return path;
        }

这是一个带有界面的网络方法:

[OperationContract]
[WebGet(ResponseFormat = WebMessageFormat.Json)]
string GetAudioPath(string objectname);

我通过在浏览器中输入来调用web方法

http://46.146.142.129/TourService/TourService.svc/GetAudioPath?objectname=ObjName01

2 个答案:

答案 0 :(得分:3)

如果将WebMessageFormat更改为Xml,则应该将原始字符串包装在XML元素中。此外,使用WebMessageBodyStyle.Bare不会将其包装在基础结构提供的XML元素中。

[WebGet(ResponseFormat = WebMessageFormat.Xml, WebMessageBodyStyle.Bare)]

答案 1 :(得分:0)

似乎有效:

String TourName = "MyTour";
int num = 21;

String path = @"http://46.146.52.139/" + @"TourService/" + TourName + @"/" + TourName + num + ".mp3";

// Result:  path = http://46.146.52.139/TourService/MyTour/MyTour21.mp3