0

使用逗号分隔的“服务器类型”给出下面的字符串:

string serverTypeList = "DB, IIS, CMDB";

//server.Type 下面循环中的值应该是“MDB”

我的问题是,在这种情况下它将返回 TRUE,因为“MDB”字符串在 serverTypeList 内。只有当它匹配“MDB”类型而不是“CMDB”时,我才需要它返回 TRUE:

...

from site in SiteManager.Sites
from server in site.Servers
where
  serverTypeList.Contains(server.Type)
select new Server()
{ ID=server.ID, SiteName=site.Name }

...

如何更改上面的代码?

谢谢

4

1 回答 1

1
(", " + serverTypeList + ", ").Contains(", " + server.Type + ", ")

是处理此问题的一种标准方法。我不清楚您使用的语言,所以我不知道您需要的确切语法,但一般的想法是通过在列表字符串之前和之后强制分隔符来确保该术语出现在分隔符之间。

于 2013-02-05T01:27:35.450 回答