我已经完成了搜索,但无法找到解决问题的方法。
我对 c#.net 有点陌生。
这是我的问题。我正在尝试动态过滤 xelement。
属性的数量和属性的值是未知的,并且将取决于其他一些例程/过程。
这些我要过滤的属性名称,可以是一个或多个要过滤的属性。
string[] param = new string[] { "techcode", "productgroup", "photolayer" }
我的 xml 文件是这种形式:
<?xml version="1.0" encoding="utf-8"?>
<threads>
<thread techcode="sometech" productgroup="pgroup"
photolayer="player" biasewma="-0.05" />
</threads>
如果我硬编码这样的东西,我可以成功过滤
IEnumerable<XElement> singlethread = (from el in apcxmlstate.Elements("thread")
where
(string)el.Attribute("techcode") == somevalue
&& (string)el.Attribute("productgroup") == somevalue
&& (string)el.Attribute("photolayer") == somevalue
select el);
但是,这不是我想要的,因为我不知道我究竟想要过滤哪个属性。它将动态生成。
例如,在运行时,我要过滤的属性仅为 techcode 和 productgroup。任何善良的灵魂会帮助我提供建议。