c#xml SelectSingleNode问题无法在节点名称中使用变量

时间:2018-03-27 04:23:57

标签: c# class selectsinglenode

拥有以下代码行

 // Load screen containers
serverTest = document.SelectSingleNode("Server/". this.serverName . "/test").InnerText;

C#不喜欢“。”连接字符,不知道该怎么做。

serverTest是我的班级btw的属性

3 个答案:

答案 0 :(得分:0)

Oops使用PHP连接字符,一小时前就使用了该语言。

其中一个mod可以删除这个,抱歉占用空间。

答案 1 :(得分:0)

你必须做这样的事情。

document.SelectSingleNode(@"Server/" + this.serverName + @"/test").InnerText;

答案 2 :(得分:0)

对于字符串连接,请使用" +"加上运算符或者string.Format如果它包含很多变量

document.SelectSingleNode(@"Server/" + this.serverName + @"/app").InnerText;

对于许多变量(一旦需要基于属性的节点检索,可以使用多个参数): -

// for [Server/localhost/App/MyApp/Module/Admin/Action/Test"

var location = string.Format(@"Server/{0}/App/{1}/Module/{2}/Action/{3}", this.serverName, this.appName, this.moduleName, this.actionName);
document.SelectSingleNode(location).InnerText;

通过将位置与检索功能分开,您可以轻松地对其进行调试并记录任何值不正确的情况。也使代码可读恕我直言。 但是对于单个值,在大多数情况下使用串联内联都可以。