Tengo el programa C# para generar el archivo RDL para mostrar el informe en los servicios de informes. Uso Linq a Xml para generar Xml.Agregue el atributo xmlns al elemento raíz
Cuando intento agregar xmlns XAtribuir al elemento de informe, encuentro varios problemas.
I PRUEBA siguientes métodos:
primeros:
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",
esta es una parte de mi código bruja muestran cómo generar xml:
segundo:
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",...
El primer método devuelve un error y el segundo método agrega el atributo xmlns a todos los nodos secundarios.
Quiero este formato:
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition">
puedo utilizar esta solución, pero como antes Desafortunadamente este atributo añadir a todos los nodos secundarios. –
Parece extraño ya que no puedo reproducir esto.Intente agregar el atributo de espacio de nombres predeterminado como en mi segundo ejemplo. Tal vez actualice su pregunta y muestre más de su código real. – Filburt
Lamentablemente como antes –