Este artigo explicará serialização e Deserialização em C# com um exemplo.
Serialização em C#
Para converter um objeto em um formato que pode ser armazenado ou transmitido por uma serialização de rede, é usado e esse formato pode ser um formato XML, formato binário ou qualquer outro formato. Serialização é usado para armazenamento e transmissão de dados, e é um conceito importante na programação C#.
Vamos dar um exemplo para entender a serialização em C#, suponha que tenhamos um "Funcionário" classe que contém o nome, ID e salário do funcionário:
usando o sistema;O código C# acima demonstra como serializar um objeto de uma classe personalizada nomeada "Funcionário" usando o DataContractSerializer classe do Sistema.Tempo de execução.Serialização espaço para nome. A classe tem três propriedades: nome, id e salário, todos marcados com o DataMember atributo para indicar que eles devem ser incluídos no processo de serialização.
Em Main, um exemplo do Funcionário a classe é criada e suas propriedades são definidas com dados de amostra e o DataContractSerializer é então usado para serializar o objeto em uma matriz de bytes, que é salva em um arquivo usando um FileStream. O caminho do arquivo é especificado usando o Caminho.Combinar e Ambiente.Diretório atual() Funções e os dados serializados são exibidos no console junto com o caminho do arquivo:
Desserialização em C#
Deserialização é o processo de conversão de dados serializados, normalmente armazenados em um arquivo, ou transmitidos por uma rede, de volta à sua forma original. Em C#, o processo de Deserialização envolve a criação de um objeto a partir de sua forma serializada, que pode ser alcançada usando várias classes internas, como o DataContractSerializer ou o XMLSerializer.
Vamos dar um exemplo para entender a desserialização em C# e usar o mesmo arquivo serializado que criamos anteriormente e o deseralizá -lo, abaixo está o código para ele:
usando o sistema;O código C# acima usa o DataContractSerializer classe para desserializar um objeto 'funcionário' que foi serializado anteriormente e salvo em um arquivo binário. A classe de funcionários é definida com DataMember atributos em suas propriedades para indicar que estes devem ser serializados/desserializados. O principal cria uma instância do serializador e abre o arquivo binário usando uma transmissão fileStream e a função ReadObject () do serializador é então usada para ler os dados serializados e criar um novo objeto de funcionário. O objeto do funcionário é então impresso no console para confirmar que foi desserializado com sucesso.
Pensamentos finais
Na programação C#, serialização e Deserialização são conceitos vitais usados para armazenamento e transmissão de dados. Serialização envolve transformar um objeto em um formato adequado para armazenamento ou transmissão, enquanto Deserialização envolve o processo reverso de converter os dados serializados de volta ao seu formulário original. No exemplo de código fornecido, o DataContractSerializer A classe é usada para serializar uma instância da classe de funcionários em uma matriz de bytes, que é salva em um arquivo. O Deserialização O processo envolve a leitura dos dados serializados do arquivo e o uso do mesmo serializador para desestimizá -los de volta em uma instância da classe de funcionários.