Sociedaccion, publicación de artículos gratis, participación ciudadana, notas de prensa
  Usuario: Clave:    
   
 
Publicación de artículo gratis
Documento sin título
Decir que 'nunca es triste la verdad' me pone muy triste. ¿Habrá algún remedio para esa tristeza?   por    
Documento sin título
 
Documento sin título
 
Documento sin título
Home
Xnechijli01 6/17/2019 3:24:35 PM
Xnechijli01
Métodos de inicialización en C# 8
Inicialización en C# 8
votos 0 comentarios 0 enviar vínculo a un amigo
Tags C# C# 8
 
Métodos de inicialización en C# 8 usando una serie de códigos
 

Constructores, deserializadores y métodos de inicialización en C#.

Podemos usar atributos especiales en nuestro código con el fin de facilitar RTL trabajo en C#. Como parte de nuestro curso de C# te mencionamos algunos de estos trucos. Para el siguiente ejemplo, debes saber un truco que usan algunos serializadores. Existe una función poco conocida para omitir el constructor de una clase conocido como FormatterServices.GetUninitializedObject. Algunos serializadores, como el DataContractSerializer, usarán esto para mejorar el rendimiento.

¿Qué pasa si necesitas que la lógica del constructor se ejecute siempre? Bueno, ahí es donde entra en juego el atributo OnDeserializing. Este atributo actúa como un constructor sustituto llamado después de GetUninitializedObject.

Para reducir la redundancia y la posibilidad de error, los desarrolladores a menudo usarán un método de inicialización común como se muestra en el ejemplo de código a continuación.

protected AbstractModelBase() { Initialize(); } [OnDeserializing] void _ModelBase_OnDeserializing(StreamingContext context) { Initialize(); } void Initialize() { m_PropertyChangedEventManager = new PropertyChangedEventManager(this); m_Errors = new ErrorsDictionary(); } 

Esto se convierte en un problema para el corrector nulo. Dado que las dos variables mencionadas no están establecidas explícitamente en el propio constructor, las marcará como no inicializadas. Lo que significa que se debe realizar un trabajo de copiar y pegar para eliminar el error.

También existe el riesgo de olvidarse de incluir un método de OnDeserializing. Dado que el verificador de nulos no comprende el método de OnDeserializing, no podrá avisarte de la posibilidad de nulos inesperados.

La mayoría de los desarrolladores encuentran que este comportamiento es confuso. Entonces, en .NET Core, el DataContractSerializer llamará al constructor. Pero eso significa que si estás apuntando a .NET Standard debes asegurarte de probar tu código de deserialización con .NET Framework y .NET Core para tener en cuenta los diferentes comportamientos. Recuerda que un curso de Visual Basic puede ayudarte, pues VB es parte de .NET Core.

Adicionalmente puedes tomar un curso de MySQL, con lo que podrás desarrollar aplicaciones basadas en base de datos. 

Te gustó esta nota, compártela con tus amigos
ico_copada.gif ico_delicious.png ico_enchilame.gif ico_facebook.png ico_fresqui.gif ico_google.gif ico_meneame.gif ico_myspace.gif ico_technorati.png ico_twitter.gif ico_yahoo.png
Visitá otras notas de Xnechijli01
Algunos conceptos básicos de SQL
Tu primer programa en MySQL
Futuras características de Visual Studio
Visual Studio se vuelve remoto
Genéricos y tipos anulables en C#
Archivo IO de Visual Basic agregado
 
Comentarios 0  
Enviá tu comentario
Para dejar tu comentario debes ser miembro de Sociedaccion.
 
Documento sin título
 
Documento sin título
 
 
 
 
Documento sin título
 
Nos contaron qué leen
Documento sin título
 
Documento sin título
ULTIMOS PUBLICADOS Internet
Algunos conceptos básicos de SQL
Xnechijli01
Algunos conceptos básicos de SQL para trabajar en MySQL
 
7/1/2019 2:52:40 PM
 
Tu primer programa en MySQL
Xnechijli01
Tu primer programa creado en MySQL
 
7/1/2019 2:24:29 PM
 
¿Cuáles son los tipos de alojamiento web?
vicenrau
Si estás a punto de adquirir un servicio de web hosting, debes saber que existen diferentes tipos de alojamiento. Elige cuál se adapta mejor a tu proyecto
 
6/20/2019 10:00:08 AM
 
Por qué los minicréditos son tan populares en España
MariF
Las nuevas Fintech
 
6/20/2019 4:06:35 AM
 
Futuras características de Visual Studio
Xnechijli01
Características de Visual Studio presentadas por Microsoft para futuras versiones
 
6/19/2019 4:23:53 PM
 
Visual Studio se vuelve remoto
Xnechijli01
Visual studio se vuelve remoto mediante el uso de could
 
6/19/2019 3:59:13 PM
 
Métodos de inicialización en C# 8
Xnechijli01
Métodos de inicialización en C# 8 usando una serie de códigos
 
6/17/2019 3:24:35 PM
 
Genéricos y tipos anulables en C#
Xnechijli01
Genéricos y tipos anulables en C# 8 recurriendo a C# 7
 
6/17/2019 2:36:42 PM
 
Archivo IO de Visual Basic agregado
Xnechijli01
El archivo IO de Visual Basic agregado a .NET Core permite el uso de plantillas
 
6/16/2019 8:47:52 PM
 
El ascenso de Visual Basic
Xnechijli01
El ascenso de Visual Basic como un lenguaje de programación
 
6/10/2019 7:04:59 PM
 
Documento sin título
 
Documento sin título
 
Documento sin título
 
 
Documento sin título
 
 
 
Documento sin título
 
Publicar es gratis, sólo tienes que registrarte y escribir.