C sharp - problema al declarar variable global

 
Vista:

problema al declarar variable global

Publicado por claudio (1 intervención) el 17/02/2005 21:19:59
Hola tengo el siguiente problema:
Estoy generando un archivo xml dentro de una clase el problema lo tengo al llamar al objeto XmlTextWriter desde otro metodos de la clase
Esto es lo que tengo:

public class XML
{
public XmlTextWriter xmlCrearPedido;

public XML()
{
}

public void OrdenPedido()
{
XmlTextWriter xmlCrearPedido = new XmlTextWriter("C:\\Inetpub\\wwwroot\\xml\\Pedido.xml", System.Text.Encoding.Default);
xmlCrearPedido.Formatting = System.Xml.Formatting.Indented;
xmlCrearPedido.WriteStartDocument();
xmlCrearPedido.WriteStartElement("OrdenPedido");
xmlCrearPedido.WriteAttributeString("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
xmlCrearPedido.WriteAttributeString("version", "1.0");
xmlCrearPedido.WriteAttributeString("xsi:noNamespaceSchemaLocation", "Envio_Pedidos.xsd");
xmlCrearPedido.WriteStartElement("envio");
xmlCrearPedido.WriteAttributeString("ensamblador", "sur");
}

public void AbreLista_pedidos()
{
xmlCrearPedido.WriteStartElement("lista_pedidos");
}
}

Cuando llamo OrdenPedido() y despues a AbreLista_pedidos() me manda este error:

Referencia a objeto no establecida como instancia de un objeto

No sé cual puede ser el problema porque en vb este codigo me funcionaba.

Bueno por cualquier ayuda muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 158
Bronce
Ha disminuido 1 puesto en C sharp (en relación al último mes)
Gráfica de C sharp

RE:problema al declarar variable global

Publicado por Yamil Bracho (1164 intervenciones) el 18/02/2005 12:28:12
Lo que pasa es que dentro de Orden pedido estas creando una variable local con el mismo nombre de la variable de instancia xmlCrearPedido.
Lo que tienes que hacer es cambiar

XmlTextWriter xmlCrearPedido = new XmlTextWriter("C:\\Inetpub\\wwwroot\\xml\\Pedido.xml", System.Text.Encoding.Default);

a

xmlCrearPedido = new XmlTextWriter("C:\\Inetpub\\wwwroot\\xml\\Pedido.xml", System.Text.Encoding.Default);

o para que te asegures de que estas referenciando a la variable de instancia colocale el this.variable_de_instancia
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar