• Compra una licencia de Windows 10/11 (9,5€) u Office (18,3€) al mejor precio u Office al mejor precio con CDKeyoffer. Entra en este post con las ofertas
  • ¡Bienvenid@! Recuerda que para comentar en el foro de El Chapuzas Informático necesitas registrar tu cuenta, tardarás menos de 2 minutos y te dará valiosa información además de ayudarte en lo que necesites o pasar un rato agradable con nosotros.

¿Cómo pasar de Newtonjson a json de Microsoft?

Meta

Nuevo
Registrado
1 Mar 2023
Mensajes
3
Puntos
1
Edad
45
Hola:

Captura2.jpg


Teniendo este código que por fin ya funciona, lo de guardar y leer controles como configuración de formulario Windows.

Uso el .NET 7.0 y tiene su propia librería. Mi idea es no usar librerías externas como Newtonsoftjson, si no el que incluye el propio .NET.

La librería oficial de Visual Studio viene aquí.

Dejo el código aquí abajo hecho con Newtonsoftjson.

C#:
namespace Guardar_y_cargar_datos_en_archivo.json_.NET_7._0___02
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        class MiInfo
        {
            public string? TextBox { get; set; }
            public bool CheckBox { get; set; }
            public bool RadioButton1_Luz_ON { get; set; }
            public bool RadioButton2_Luz_OFF { get; set; }
        }

        void SalvarDatos()
        {
            MiInfo miInfo = new()
            {
                TextBox = textBox1.Text,
                CheckBox = checkBox1.Checked,
                RadioButton1_Luz_ON = radioButton1.Checked,
                RadioButton2_Luz_OFF = radioButton2.Checked
            };

            try
            {
                string serializado = JsonConvert.SerializeObject(miInfo);
                File.WriteAllText(@"Ejemplo.json", serializado);
            }
            catch { }
        }

        void RecuperarDatos()
        {
            if (File.Exists(@"Ejemplo.json"))
            {
                string serializado = File.ReadAllText(@"Ejemplo.json");
                //MiInfo miInfo = (MiInfo)JsonConvert.DeserializeObject(serializado);
                MiInfo miInfo = JsonConvert.DeserializeObject<MiInfo>(serializado);
                if (miInfo != null)
                {
                    textBox1.Text = miInfo.TextBox;
                    checkBox1.Checked = miInfo.CheckBox;
                    radioButton1.Checked = miInfo.RadioButton1_Luz_ON;
                    radioButton2.Checked = miInfo.RadioButton2_Luz_OFF;
                }
            }
        }
    }
}
Ahora toca hacer lo que se tenga que hacer con la librería que incluye el .net.

¿Alguna idea?

Lo pregunto porque veo que no es para nada compatible entre Newtonsoftjson con el json .net de Microsoft.

Saludos.
 
Arriba