5

検索を行いましたが、問題の解決策を見つけることができませんでした。

私はc#.netに少し慣れていません。

これが私の問題です。xelement を動的にフィルタリングしようとしています。

属性の数と属性の値は不明であり、他のルーチン/プロセスに依存します。

これらはフィルタリングする属性名であり、フィルタリングする 1 つ以上の属性にすることができます。

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 のみです。親切な魂が私に提案を提供するのを助けてくれませんか.

4

1 に答える 1