我有两个xml文档,简化为
<NumSetA>
<num Operation="+/-">1</num>
<num Operation="+">3</num>
<num Operation="+/*">4</num>
</NumSetA>
<NumSetB>
<num>2</num>
<num>9</num>
</NumSetB>
我想将NumSetA与NumSetB一起加入Operation标签中所述的可能操作,即。 1 + 2,1-2,1 + 9,1-9,3 + 2,3 + 9,4 + 2,4 + 9,4 * 2,4 * 9 通过使用string.split('/')
我想做的是
var CrossJoin = SetA.Elements("num").join(this.attribute("Operation").value.split('/'),
.join(SetB.Elements("num"))
抱歉有创造力。希望你明白我在说什么。 我怎样才能做到这一点?
答案 0 :(得分:1)
使用查询语法非常容易:
var crossJoin =
from numA in SetA.Elements("num")
from op in numA.Attribute("Operation").value.split('/')
from numB in SetB.Elements("num")
select new {
a = numA.value,
op,
b = numB.value
};