c# - tipo - Espacio de nombres para
para que sirven las interfaces en c# (5)
En visual studio para .Net 4.0 framework,
- Intenta agregar una nueva referencia al proyecto.
- En la pestaña .Net,
System.Runtime.Serialization
. - Ahora, puede utilizar el
using System.Runtime.Serialization
. Y el error no se mostrará.
No puedo encontrar el espacio de nombres para usar para los elementos [DataContract]
y [DataMember]
. Según lo que he encontrado, parece que agregar lo siguiente debería ser suficiente, pero en mi caso no lo es.
using System;
using System.Runtime.Serialization;
Aquí hay un fragmento de mi código:
using System;
using System.Runtime.Serialization;
namespace MyNamespace {
[DataContract]
public class Tuple<T1, T2> {
// A custom implementation of a Tuple
//...
//...
}
}
Y el error que recibo:
No se pudo encontrar el tipo o el nombre del espacio de nombres ''DataContract'' (¿falta una directiva de uso o una referencia de ensamblado?)
¿No estoy usando los espacios de nombres correctos?
Los atributos [DataContract] y [DataMember] se encuentran en el espacio de nombres System.ServiceModel que está en System.ServiceModel.dll.
System.ServiceModel utiliza los espacios de nombres System y System.Runtime.Serialization para serializar los datamembers.
Primero agrego las referencias a mi modelo, luego las uso en mi código. Hay dos referencias que debes agregar:
utilizando System.ServiceModel;
utilizando System.Runtime.Serialization;
Entonces, este problema fue resuelto en mi programa. Espero que esta respuesta te pueda ayudar. Gracias.
http://msdn.microsoft.com/en-us/library/system.runtime.serialization.datacontractattribute.aspx
DataContractAttribute está en el espacio de nombres System.Runtime.Serialization y debería hacer referencia a System.Runtime.Serialization.dll. Solo está disponible en .Net> = 3
DataContractAttribute
clase DataContractAttribute
está en el System.Runtime.Serialization
nombres System.Runtime.Serialization
.
Debe agregar una referencia a System.Runtime.Serialization.dll
. Sin embargo, ese ensamblaje no está referenciado por defecto. Para agregar la referencia a su proyecto, debe ir a Referencias -> Agregar referencia en el Explorador de soluciones y agregar una referencia de ensamblaje manualmente.