Uma das soluções é trabalharmos com serialização no formato xml que irá facilitar na comunicação com outros sistemas e extensibilidade da informação que estaremos gravando/recuperando em algumas das operações do nosso sistema.
A solução que iremos demonstrar é uma aplicação Console que realiza a serialização de uma estrutura onde iremos armazenar o usuário e o nome da máquina informados, além de registrar um log de horário para cada execução do programa.
Primeiramente deveremos definir a estrutura que gostaríamos de serializar através de uma classe. Nesse caso serão 2 classes:
- Registro de execução (Login)
- Dados do usuário (Configuration)
1: public class Login
2: {
3: public DateTime DateTime { get; set; }
4: }
5: public class Configuration
6: {
7: public string UserName { get; set; }
8: public string MachineName { get; set; }
9: public Login[] Logins { get; set; }
10: }
1: [XmlRoot("SystemConfiguration")]
2: public class Configuration
3: {
4: [XmlElement("UserName")]
5: public string UserName { get; set; }
6: [XmlElement("MachineName")]
7: public string MachineName { get; set; }
8: [XmlArray("Logins")]
9: [XmlArrayItem("Login", typeof(Login))]
10: public Login[] Logins { get; set; }
11: }
12: public class Login
13: {
14: [XmlElement("DateTime")]
15: public DateTime DateTime { get; set; }
16: }
Após isso, só resta realizar as operações de serialização e deserialização do objeto e do xml respectivamente.
Operação de serialização
1: XmlSerializer serializer = new XmlSerializer(typeof(Data.Configuration));
2: StreamWriter sW = new StreamWriter(PathConfigurationFile);
3: serializer.Serialize(sW, config);
4: sW.Close();
1: XmlSerializer serializer = new XmlSerializer(typeof(Data.Configuration));
2: StreamReader sR = new StreamReader(PathConfigurationFile);
3: Data.Configuration config = (Data.Configuration)serializer.Deserialize(sR);
4: sR.Close();
Código fonte para download: clique aqui
Detalhes do ambiente de desenvolvimento
- Linguagem: C#
- Framework: .NET Framework 3.5 SP 1
- Ferramenta: Visual Studio 2008 Development Edition
- Sistema Operacional: Windows XP SP2
Nenhum comentário:
Postar um comentário