Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Armazenamento de Dados em arquivo XML ou SQL Server (C# .Net)

Olá pessoal, iniciei meus estudos aqui no Alura semana passada e estou começando com os cursos de C# e conceitos de orientação a objetos. Meu objetivo é desenvolver uma aplicação windows forms em que eu armazene vários produtos em uma base de dados. Porém, estes produtos necessitam ser armazenados junto com um gráfico (Chart) e cada produto possui neste gráfico diversos vetores com suas características. Minha dúvida: como estes valores, depois de cadastrados não mudarão, é mais conveniente (maior performance) armazenar estes vetores num arquivo XML ou no banco de dados SQL Server? Um produto tem um chart e este chart terá vários vetores - cada vetor terá 14 pontos de coordenada (X x Y). Tem algum curso específico para XML ou manipulação de gráficos? Muito obrigado!

3 respostas

Se você quer trabalhar com XML e Windows Form, este link deve te ajudar

http://www.macoratti.net/12/09/xml_cur2.htm

Para criar gráficos com Windows Forms, veja o link abaixo:

http://www.macoratti.net/12/11/c_chart1.htm
solução!

Olá, Samuel!

Depende do que você vai fazer com o seu aplicativo. É um programa que só você vai usar, ou vai criar um software para algum cliente? Tem dados sensíveis, confidenciais?

Se a sua base de dados (de vetores) não for muito grande, e nem for crescer muito com o tempo, é mais simples e rápido armazenar e recuperar esses dados como XML (ou mesmo no formato JSON). O formato JSON pode ser uma opção, por ocupar menos espaço no arquivo. O SQL Server é bem mais poderoso e mais seguro que o sistema de arquivos, claro, porém se você vai usar o SQL Server só para armazenar e ler uma base de dados pequena e imutável, onde a segurança dos dados não é importante, acho melhor usar XML ou JSON.

Sobre software para criar gráficos, encontrei duas opções open source que podem ser interessantes:

https://code.msdn.microsoft.com/Samples-Environments-for-b01e9c61

https://lvcharts.net/

Um abraço

Daniel Bins, agradeço pelas dicas, eu já tinha visto estes dois artigos e na verdade foram eles que me guiaram até minha primeira versão do aplicativo. Marcelo, este projeto seria para a empresa onde trabalho, a necessidade é a de disponibilizar uma aplicação (pode ser windows forms porém o melhor cenário seria rodar via web com os clientes mobile) para que vários usuários consultem estes gráficos e decidam quais dos produtos atendam a necessidade do cliente. Analisando melhor o caso, se o aplicativos ficasse apenas para consulta destes gráficos, o XML seria ideal para armazenar apenas os vetores, porém é pretendido que o projeto se estenda para que o aplicativo armazene dados de projetos de engenharia, clientes, estrutura de produtos e gere formulários e orçamentos. Daí vejo que um banco de dados SQL realmente será necessário. Acredito que trabalhar com o Entity Framework, windows forms, SQL Server seja o caminho. Obrigado!