Overview
Los objetos CLR simples, u objetos de clase simples (POCO), son objetos de clase simples que no heredan funcionalidades de ninguna clase o interfaz base específica del marco. Si tu aplicación usa POCOs, puedes usar el C# Analyzer para previsualizarlos como objetos JSON.
Para aprender más sobre los POCO, consulte el Página de POCOs en Wikipedia y la página Trabajar con POCOs en la documentación del controlador .NET/C# .
Vista previa como JSON
El siguiente ejemplo de código muestra una definición de clase POCO y su traducción correspondiente en JSON. Al previsualizar tus POCOs en JSON, puedes ver cómo los atributos de serialización BSON, como BsonId y BsonElement, cambie la forma del BSON resultante durante la serialización.
class Order { [] public int OrderNumber { get; set; } [] public int CustomerId { get; set; } public string Date { get; set; } [] public string Email { get; set; } }
{ "_id": 6783456, "customer_id": 678234, "Date": "06/03/2023" }
Tip
Datos de muestra
El C# Analyzer incluye valores de muestra predefinidos para ciertos nombres de propiedades comunes. Si usa estos nombres de propiedad en su POCO, el Analizador utiliza los valores de muestra en la salida JSON. Para cualquier nombre de propiedad sin valores de muestra predefinidos, el Analizador utiliza un valor aleatorio que coincida con el tipo de datos de la propiedad.
Para obtener una lista de nombres de propiedades con valores de muestra, consulte el archivo de valores de muestra JSON en el repositorio de GitHub del MongoDB C# Analyzer.
Previsualizar POCO en Visual Studio
Para previsualizar tus POCOs en Visual Studio, realiza las siguientes acciones:
Instala el Analizador de C# como se describe en el Guía de instalación del MongoDB C# Analyzer.
Definir una clase POCO.
Mueve el cursor sobre el ... anotación de puntos suspensivos debajo de la primera palabra de su definición de clase para mostrar un mensaje de información que contenga la traducción JSON.
Haz clic en la siguiente pestaña correspondiente para ver una definición de clase POCO con o sin un mensaje informativo mostrado:
POCOs no compatibles
Si la configuración de serialización POCO no está configurada correctamente, el Analizador de C# muestra una advertencia MAPOCO2001.
El siguiente snippet contiene un POCO que utiliza el atributo [BsonTimeSpanOptions] en una propiedad con el tipo de dato bool:
public class NotSupportedPoco { [] public bool InStock { get; set; } }
La siguiente captura de pantalla muestra el código anotado y la advertencia que se muestra cuando se pasa el cursor sobre la anotación:

Tip
Panel de lista de errores
Si utilizas Visual Studio para Windows, puedes ver la salida del C# Analyzer en la ventana Lista de errores.
Para aprender más información, consulta Ventana de lista de errores de Microsoft.

