5

チーム ビルドを使用して、開発サーバーへの展開を処理しています。また、変換時に Web 構成からコメントを削除する必要があります。<!-- -->変換を使用して Web 構成ファイルからコメント行を削除する方法を知っている人はいますか?

4

3 に答える 3

3

答えを見つけました。これは、Visual Studio /TeamBuildのXDT変換エンジンの既知のバグのようです。このバグは3月に報告されたため、いつ修正されるかわかりません。

ここにリンクがあります

編集:このリンクは実際には元の質問とは関係ありません。最終的に、組み込みのWeb構成変換では不可能であることがわかりました。そのため、コメントを削除し、変換されたファイルを適切にフォーマットするためのコンソールアプリケーションを作成することになりました。

于 2010-06-04T12:42:16.307 に答える
2

これが私の機能です。ヘルパー クラスに追加できます。

public static string RemoveComments(
        string xmlString,
        int indention,
        bool preserveWhiteSpace)
    {
        XmlDocument xDoc = new XmlDocument();
        xDoc.PreserveWhitespace = preserveWhiteSpace;
        xDoc.LoadXml(xmlString);
        XmlNodeList list = xDoc.SelectNodes("//comment()");

        foreach (XmlNode node in list)
        {
            node.ParentNode.RemoveChild(node);
        }

        string xml;
        using (StringWriter sw = new StringWriter())
        {
            using (XmlTextWriter xtw = new XmlTextWriter(sw))
            {
                if (indention > 0)
                {
                    xtw.IndentChar = ' ';
                    xtw.Indentation = indention;
                    xtw.Formatting = System.Xml.Formatting.Indented;
                }

                xDoc.WriteContentTo(xtw);
                xtw.Close();
                sw.Close();
            }
            xml = sw.ToString();
        }

        return xml;
    }
于 2011-09-27T15:44:53.387 に答える