Ajouter un attribut xmlns à l'élément racine

J'ai le C# pour Générer Fichier RDL, Pour lequel Afficher le rapport dans Reporting services.
J'ai utiliser Linq to Xml pour générer le Xml.

Lorsque j'essaie d'ajouter xmlns XAttribute à l'Élément de Rapport, je rencontre plusieurs problèmes.

- Je tester des méthodes suivantes:

première:

        XDocument d = new XDocument(
           new XDeclaration("1.0", "utf-8", "yes"),
           new XElement("Report",
               new XAttribute(XNamespace.Xmlns + "rd", "http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"),
               new XAttribute(XNamespace.Xmlns + "cl", "http://schemas.microsoft.com/sqlserver/reporting/2010/01/componentdefinition"),
               new XAttribute("xmlns", "http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition"),
                   new XElement("DataSources", ""),
                   new XElement("DataSets", ""),
                   new XElement("ReportSections",

c'est une partie de mon code sorcière montrer comment générer du code xml:

deuxième:

XNamespace reportDef = "http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition";
        XDocument d = new XDocument(
           new XDeclaration("1.0", "utf-8", "yes"),
           new XElement(reportDef + "Report",
               new XAttribute(XNamespace.Xmlns + "rd", "http://schemas.microsoft.com/SQLServer/reporting/reportdesigner"),
               new XAttribute(XNamespace.Xmlns + "cl", "http://schemas.microsoft.com/sqlserver/reporting/2010/01/componentdefinition"),
                   new XElement("DataSources", ""),
                   new XElement("DataSets", ""),
                   new XElement("ReportSections",...

La première méthode retourne une Erreur et la deuxième méthode permet d'ajouter l'attribut xmlns à tous les nœuds enfants.

Je veux que ce format:

<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition">

OriginalL'auteur Amir Reza | 2012-05-12