0
下面是一段代码:LINQ算法从XML创建通用表
XNamespace z = "#SomeSchema";
var listCols = new HashSet<Col>();
var colNameList = new List<string>(..some values..);
var xElementList = doc.Descendants(z + "row");
return new HashSet<Row>(xElementList .Select(x=> new Row
{
Col= new List<Col>(listCols).Select(col =>
{
col.Value= (string)x.Attribute(colNameList.First(colName=> colName == col.Name));
return col;
}).ToList()
}));
什么是错的是,返回值将包含行的名单,但所有这些行有相同的值(对于Col值)。
实施例,行[1] .COL [1]。价值==行[2] .COL [2]。价值
并且这些值应该是完全地不同。我从一个Xml文件中获取这些值。当我调试xElementList时,值是différents,但是当我尝试使用它们创建行时,所有行都是相同的。 实际上,行具有相同的列列表,这是xElementList的最后一个记录。
我做错了什么?
谢谢。
谢谢你队友;)它完美的作品! – Cratebox99