2014-01-22 65 views
0

我正在尋找一種方法來排序由Visual Studio創建的.settings xml文件。 設置元素應該按Value元素的值排序。排序Visual Studio .settings文件

我猜這對xslt來說是件容易的事,但對我來說呢..長長的犛牛剃鬚。

回答

0

這不是XSLT,只是快速和骯髒的C#

internal class Program 
{ 
    private static void Main(string[] args) 
    { 
     string path = args[0]; 

     XDocument xDoc = XDocument.Load(path); 
     XNamespace xmlns = "http://schemas.microsoft.com/VisualStudio/2004/01/settings"; 

     XElement settingsElement = xDoc.Root.Element(xmlns + "Settings"); 

     var orderedSettingElements = settingsElement.Elements(xmlns + "Setting").OrderBy(element => element.Element(xmlns + "Value").Value).ToArray(); 

     settingsElement.RemoveAll(); 

     foreach (XElement settingElement in orderedSettingElements) 
     { 
      settingsElement.Add(settingElement); 
     } 

     xDoc.Save(path); 
    } 
}