powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Приложение для обработки XML
6 сообщений из 6, страница 1 из 1
Приложение для обработки XML
    #38966854
Rumise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет, прошу помощи в создании приложения WPF для работы с XML и с MSSQL, которое умеет:
выбирать xml файл и проверять имя файла на соответствие формату, загружать данные из файла в БД, отображать и редактировать данные в БД, сохранять в файл из БД, вести логгирование действий.

Структура файла:
Код XML
Код: xml
1.
2.
3.
4.
<File FileVersion=«Версия файла»>
  <Name>Наименование файла </Name>
  <DateTime>Дата изменения</DateTime>
</File>


Имя файла имеет формат «XX_YY_ZZ.xml», где:
XX – набор русских букв. Количество символов - не более 100;
YY – набор цифр. Количество символов – либо 1, либо 10, либо от 14 до 20;
ZZ – любые символы. Количество символов – не более 7.
Пока что научил программу отображать таблицу из БД в DataGrid и сохранять изменения в Datagrid в БД.
Классы для работы с DataGrid:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XmlData.FileDBDataSetTableAdapters;
 
namespace XmlData
{
    class DataProvider
    {
        private static FileDBDataSet fileDataSet;
 
        public static FileDBDataSet FileDataSet
        {
            get
            {
                if (fileDataSet == null)
                {
                    fileDataSet = new FileDBDataSet();
                }
                return DataProvider.fileDataSet;
            }
        }
    }
 
    public class XMLDBDataProvider
    {
        private XmlFilesTableAdapter adapter;
 
        public XMLDBDataProvider()
        {
            FileDBDataSet dataset = DataProvider.FileDataSet;
 
            adapter = new XmlFilesTableAdapter();
            adapter.Fill(DataProvider.FileDataSet.XmlFiles);
 
            dataset.XmlFiles.XmlFilesRowChanged += new FileDBDataSet.XmlFilesRowChangeEventHandler(XMLRowModified);
            dataset.XmlFiles.XmlFilesRowDeleted += new FileDBDataSet.XmlFilesRowChangeEventHandler(XMLRowModified);
        }
 
        void XMLRowModified(object sender, FileDBDataSet.XmlFilesRowChangeEvent e)
        {
            adapter.Update(DataProvider.FileDataSet.XmlFiles);
        }
 
        public DataView GetXMLDB()
        {
            return DataProvider.FileDataSet.XmlFiles.DefaultView;
        }
    }
}


XAML файл
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
<Window x:Class="XmlData.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="clr-namespace:XmlData"
        xmlns:dg="http://schemas.microsoft.com/wpf/2008/toolkit"
        Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
        
    
    <Window.Resources>
        <ObjectDataProvider x:Key="DataProvider" ObjectType="{x:Type local:XMLDBDataProvider}"/>
        <ObjectDataProvider x:Key="XmlFiles" ObjectInstance="{StaticResource DataProvider}" MethodName="GetXMLDB"/>
    </Window.Resources>
    <Grid DataContext="{Binding Source={StaticResource XmlFiles }}">
        <DataGrid HorizontalAlignment="Left" Margin="73,39,0,0" VerticalAlignment="Top" Height="148" Width="355" ItemsSource="{Binding}"/>
        
    </Grid>
    
</Window>



Могу ли я используя этот код указывать путь к xml файлу и загружать его в базу? И как реализовать сохранение изменений в БД только после нажатия кнопки "Сохранить"? С логированием тоже пока непонятно.
...
Рейтинг: 0 / 0
Приложение для обработки XML
    #38966856
Rumise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ссылка на архив с проектом https://yadi.sk/d/A4q4wZQOgp9HM
...
Рейтинг: 0 / 0
Приложение для обработки XML
    #38966858
Rumise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проверку имени файла я реализовать с помощью регулярных выражений.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Windows;

namespace XmlData
{
    class CheckName
    {
        static string filePath = @"C:\Users\Michael\YandexDisk\Projects\data\абв_1234567890_ак45.xml";
        static string filename = System.IO.Path.GetFileNameWithoutExtension(filePath);

        public void isValid()
        {
            string[] fileSplit = filename.Split('_');
            if ((Regex.IsMatch(fileSplit[0], "^[А-Яа-я]+$") & fileSplit[0].Length <= 100) & (Regex.IsMatch(fileSplit[1], @"^\d{1}$|^\d{10}$|^\d{14,20}$")) & (fileSplit[2].Length <= 7))
            {
                MessageBox.Show("Все ок");
            }
            else MessageBox.Show("Bad");
        }
    }
}
...
Рейтинг: 0 / 0
Приложение для обработки XML
    #38966871
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сделаю вашу курсовую за скромную плату )
вот если бы Зоя согласилась, а вам только за бабки ) учение свет! неученье тьма )
...
Рейтинг: 0 / 0
Приложение для обработки XML
    #38966933
Rumise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Roman Mejtesсделаю вашу курсовую за скромную плату )
вот если бы Зоя согласилась, а вам только за бабки ) учение свет! неученье тьма )
Хочется все таки самому сделать, надеялся услышать пару советов в какую сторону смотреть.
...
Рейтинг: 0 / 0
Приложение для обработки XML
    #38967055
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rumiseнадеялся услышать пару советов в какую сторону смотреть.
Смотреть в сторону WPF, XML и MSSQL
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Приложение для обработки XML
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]