Заполнен слой моделей и контрактов, начата работа с формами и бизнесс логикой
This commit is contained in:
parent
294e3d120d
commit
ebad0059e9
9
BookShop/BookShopDataBaseImplement.csproj
Normal file
9
BookShop/BookShopDataBaseImplement.csproj
Normal file
@ -0,0 +1,9 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
9
BookShopBusinessLogic/BookShopBusinessLogic.csproj
Normal file
9
BookShopBusinessLogic/BookShopBusinessLogic.csproj
Normal file
@ -0,0 +1,9 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
7
BookShopBusinessLogic/Class1.cs
Normal file
7
BookShopBusinessLogic/Class1.cs
Normal file
@ -0,0 +1,7 @@
|
||||
namespace BookShopBusinessLogic
|
||||
{
|
||||
public class Class1
|
||||
{
|
||||
|
||||
}
|
||||
}
|
17
BookShopContracts/BindingModels/AuthorBindingModel.cs
Normal file
17
BookShopContracts/BindingModels/AuthorBindingModel.cs
Normal file
@ -0,0 +1,17 @@
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BindingModels
|
||||
{
|
||||
public class AuthorBindingModel : IAuthorModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string Surname { get; set; } = string.Empty;
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public string Patronymic { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
23
BookShopContracts/BindingModels/BookBindingModel.cs
Normal file
23
BookShopContracts/BindingModels/BookBindingModel.cs
Normal file
@ -0,0 +1,23 @@
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BindingModels
|
||||
{
|
||||
public class BookBindingModel : IBookModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
[DisplayName("Название")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
[DisplayName("Стоимость")]
|
||||
public double Cost { get; set; }
|
||||
[DisplayName("Количество")]
|
||||
public int Count { get; set; }
|
||||
[DisplayName("Жанр")]
|
||||
public int GenreId { get; set; }
|
||||
}
|
||||
}
|
20
BookShopContracts/BindingModels/ClientBindingModel.cs
Normal file
20
BookShopContracts/BindingModels/ClientBindingModel.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using BookShopContracts.BusinessLogicsContracts;
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BindingModels
|
||||
{
|
||||
public class ClientBindingModel : IClientModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string Surname { get; set; } = string.Empty;
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public string Patronymic { get; set; } = string.Empty;
|
||||
public string Email { get; set; } = string.Empty;
|
||||
|
||||
}
|
||||
}
|
15
BookShopContracts/BindingModels/GenreBindingModel.cs
Normal file
15
BookShopContracts/BindingModels/GenreBindingModel.cs
Normal file
@ -0,0 +1,15 @@
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BindingModels
|
||||
{
|
||||
public class GenreBindingModel : IGenreModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string Name { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
21
BookShopContracts/BindingModels/OrderBindingModel.cs
Normal file
21
BookShopContracts/BindingModels/OrderBindingModel.cs
Normal file
@ -0,0 +1,21 @@
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BindingModels
|
||||
{
|
||||
public class OrderBindingModel : IOrderModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public int BookId { get; set; }
|
||||
public string BookName { get; set; } = string.Empty;
|
||||
public int ClientId { get; set; }
|
||||
public string ClientName { get; set; } = string.Empty;
|
||||
public int Count { get; set; }
|
||||
public double Sum { get; set; }
|
||||
public DateTime DateCreate { get; set; } = DateTime.Now;
|
||||
}
|
||||
}
|
13
BookShopContracts/BookShopContracts.csproj
Normal file
13
BookShopContracts/BookShopContracts.csproj
Normal file
@ -0,0 +1,13 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\BookShopDataModels\BookShopDataModels.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
20
BookShopContracts/BusinessLogicsContracts/IAuthorLogic.cs
Normal file
20
BookShopContracts/BusinessLogicsContracts/IAuthorLogic.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IAuthorLogic
|
||||
{
|
||||
List<AuthorViewModel>? ReadList(AuthorSearchModel? model);
|
||||
AuthorViewModel? ReadElement(AuthorSearchModel model);
|
||||
bool Create(AuthorBindingModel model);
|
||||
bool Update(AuthorBindingModel model);
|
||||
bool Delete(AuthorBindingModel model);
|
||||
}
|
||||
}
|
20
BookShopContracts/BusinessLogicsContracts/IBookLogic.cs
Normal file
20
BookShopContracts/BusinessLogicsContracts/IBookLogic.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IBookLogic
|
||||
{
|
||||
List<BookViewModel>? ReadList(BookSearchModel? model);
|
||||
BookViewModel? ReadElement(BookSearchModel model);
|
||||
bool Create(BookBindingModel model);
|
||||
bool Update(BookBindingModel model);
|
||||
bool Delete(BookBindingModel model);
|
||||
}
|
||||
}
|
20
BookShopContracts/BusinessLogicsContracts/IClientLogic.cs
Normal file
20
BookShopContracts/BusinessLogicsContracts/IClientLogic.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IClientLogic
|
||||
{
|
||||
List<ClientViewModel>? ReadList(ClientSearchModel? model);
|
||||
ClientViewModel? ReadElement(ClientSearchModel model);
|
||||
bool Create(ClientBindingModel model);
|
||||
bool Update(ClientBindingModel model);
|
||||
bool Delete(ClientBindingModel model);
|
||||
}
|
||||
}
|
20
BookShopContracts/BusinessLogicsContracts/IGenreLogic.cs
Normal file
20
BookShopContracts/BusinessLogicsContracts/IGenreLogic.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IGenreLogic
|
||||
{
|
||||
List<GenreViewModel>? ReadList(GenreSearchModel? model);
|
||||
GenreViewModel? ReadElement(GenreSearchModel model);
|
||||
bool Create(GenreBindingModel model);
|
||||
bool Update(GenreBindingModel model);
|
||||
bool Delete(GenreBindingModel model);
|
||||
}
|
||||
}
|
20
BookShopContracts/BusinessLogicsContracts/IOrderLogic.cs
Normal file
20
BookShopContracts/BusinessLogicsContracts/IOrderLogic.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.BusinessLogicsContracts
|
||||
{
|
||||
public interface IOrderLogic
|
||||
{
|
||||
List<OrderViewModel>? ReadList(OrderSearchModel? model);
|
||||
OrderViewModel? ReadElement(OrderSearchModel model);
|
||||
bool Create(OrderBindingModel model);
|
||||
bool Update(OrderBindingModel model);
|
||||
bool Delete(OrderBindingModel model);
|
||||
}
|
||||
}
|
15
BookShopContracts/SearchModels/AuthorSearchModel.cs
Normal file
15
BookShopContracts/SearchModels/AuthorSearchModel.cs
Normal file
@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.SearchModels
|
||||
{
|
||||
public class AuthorSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? Surname { get; set; }
|
||||
public string? Name { get; set; }
|
||||
}
|
||||
}
|
15
BookShopContracts/SearchModels/BookSearchModel.cs
Normal file
15
BookShopContracts/SearchModels/BookSearchModel.cs
Normal file
@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.SearchModels
|
||||
{
|
||||
public class BookSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? Name { get; set; }
|
||||
public int? GenreId { get; set; }
|
||||
}
|
||||
}
|
14
BookShopContracts/SearchModels/ClientSearchModel.cs
Normal file
14
BookShopContracts/SearchModels/ClientSearchModel.cs
Normal file
@ -0,0 +1,14 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.SearchModels
|
||||
{
|
||||
public class ClientSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? Surname { get; set; }
|
||||
}
|
||||
}
|
14
BookShopContracts/SearchModels/GenreSearchModel.cs
Normal file
14
BookShopContracts/SearchModels/GenreSearchModel.cs
Normal file
@ -0,0 +1,14 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.SearchModels
|
||||
{
|
||||
public class GenreSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public string? Name { get; set; }
|
||||
}
|
||||
}
|
15
BookShopContracts/SearchModels/OrderSearchModel.cs
Normal file
15
BookShopContracts/SearchModels/OrderSearchModel.cs
Normal file
@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.SearchModels
|
||||
{
|
||||
public class OrderSearchModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
public int? ClientId { get; set; }
|
||||
public DateTime? DateCreate { get; set; }
|
||||
}
|
||||
}
|
21
BookShopContracts/StoragesContracts/IAuthorStorage.cs
Normal file
21
BookShopContracts/StoragesContracts/IAuthorStorage.cs
Normal file
@ -0,0 +1,21 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.StoragesContracts
|
||||
{
|
||||
public interface IAuthorStorage
|
||||
{
|
||||
List<AuthorViewModel> GetFullList();
|
||||
List<AuthorViewModel> GetFilteredList(AuthorSearchModel model);
|
||||
AuthorViewModel? GetElement(AuthorSearchModel model);
|
||||
AuthorViewModel? Insert(AuthorBindingModel model);
|
||||
AuthorViewModel? Update(AuthorBindingModel model);
|
||||
AuthorViewModel? Delete(AuthorBindingModel model);
|
||||
}
|
||||
}
|
21
BookShopContracts/StoragesContracts/IBookStorage.cs
Normal file
21
BookShopContracts/StoragesContracts/IBookStorage.cs
Normal file
@ -0,0 +1,21 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.StoragesContracts
|
||||
{
|
||||
public interface IBookStorage
|
||||
{
|
||||
List<BookViewModel> GetFullList();
|
||||
List<BookViewModel> GetFilteredList(BookSearchModel model);
|
||||
BookViewModel? GetElement(BookSearchModel model);
|
||||
BookViewModel? Insert(BookBindingModel model);
|
||||
BookViewModel? Update(BookBindingModel model);
|
||||
BookViewModel? Delete(BookBindingModel model);
|
||||
}
|
||||
}
|
21
BookShopContracts/StoragesContracts/IClientStorage.cs
Normal file
21
BookShopContracts/StoragesContracts/IClientStorage.cs
Normal file
@ -0,0 +1,21 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.StoragesContracts
|
||||
{
|
||||
public interface IClientStorage
|
||||
{
|
||||
List<ClientViewModel> GetFullList();
|
||||
List<ClientViewModel> GetFilteredList(ClientSearchModel model);
|
||||
ClientViewModel? GetElement(ClientSearchModel model);
|
||||
ClientViewModel? Insert(ClientBindingModel model);
|
||||
ClientViewModel? Update(ClientBindingModel model);
|
||||
ClientViewModel? Delete(ClientBindingModel model);
|
||||
}
|
||||
}
|
21
BookShopContracts/StoragesContracts/IGenreStorage.cs
Normal file
21
BookShopContracts/StoragesContracts/IGenreStorage.cs
Normal file
@ -0,0 +1,21 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.StoragesContracts
|
||||
{
|
||||
public interface IGenreStorage
|
||||
{
|
||||
List<GenreViewModel> GetFullList();
|
||||
List<GenreViewModel> GetFilteredList(GenreSearchModel model);
|
||||
GenreViewModel? GetElement(GenreSearchModel model);
|
||||
GenreViewModel? Insert(GenreBindingModel model);
|
||||
GenreViewModel? Update(GenreBindingModel model);
|
||||
GenreViewModel? Delete(GenreBindingModel model);
|
||||
}
|
||||
}
|
21
BookShopContracts/StoragesContracts/IOrderStorage.cs
Normal file
21
BookShopContracts/StoragesContracts/IOrderStorage.cs
Normal file
@ -0,0 +1,21 @@
|
||||
using BookShopContracts.BindingModels;
|
||||
using BookShopContracts.SearchModels;
|
||||
using BookShopContracts.ViewModels;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.StoragesContracts
|
||||
{
|
||||
public interface IOrderStorage
|
||||
{
|
||||
List<BookViewModel> GetFullList();
|
||||
List<BookViewModel> GetFilteredList(BookSearchModel model);
|
||||
BookViewModel? GetElement(BookSearchModel model);
|
||||
BookViewModel? Insert(BookBindingModel model);
|
||||
BookViewModel? Update(BookBindingModel model);
|
||||
BookViewModel? Delete(BookBindingModel model);
|
||||
}
|
||||
}
|
21
BookShopContracts/ViewModels/AuthorViewModel.cs
Normal file
21
BookShopContracts/ViewModels/AuthorViewModel.cs
Normal file
@ -0,0 +1,21 @@
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.ViewModels
|
||||
{
|
||||
public class AuthorViewModel: IAuthorModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
[DisplayName("Фамилия автора")]
|
||||
public string Surname { get; set; } = string.Empty;
|
||||
[DisplayName("Имя автора")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
[DisplayName("Отчество автора")]
|
||||
public string Patronymic { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
18
BookShopContracts/ViewModels/BookViewModel.cs
Normal file
18
BookShopContracts/ViewModels/BookViewModel.cs
Normal file
@ -0,0 +1,18 @@
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.ViewModels
|
||||
{
|
||||
public class BookViewModel: IBookModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public double Cost { get; set; }
|
||||
public int Count { get; set; }
|
||||
public int GenreId { get; set; }
|
||||
}
|
||||
}
|
24
BookShopContracts/ViewModels/ClientViewModel.cs
Normal file
24
BookShopContracts/ViewModels/ClientViewModel.cs
Normal file
@ -0,0 +1,24 @@
|
||||
using BookShopContracts.BusinessLogicsContracts;
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.ViewModels
|
||||
{
|
||||
public class ClientViewModel: IClientModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
[DisplayName("Фамилия клиента")]
|
||||
public string Surname { get; set; } = string.Empty;
|
||||
[DisplayName("Имя клиента")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
[DisplayName("Отчество клиента")]
|
||||
public string Patronymic { get; set; } = string.Empty;
|
||||
[DisplayName("Почта клиента")]
|
||||
public string Email { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
17
BookShopContracts/ViewModels/GenreViewModel.cs
Normal file
17
BookShopContracts/ViewModels/GenreViewModel.cs
Normal file
@ -0,0 +1,17 @@
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.ViewModels
|
||||
{
|
||||
public class GenreViewModel: IGenreModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
[DisplayName("Жанр")]
|
||||
public string Name { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
27
BookShopContracts/ViewModels/OrderViewModel.cs
Normal file
27
BookShopContracts/ViewModels/OrderViewModel.cs
Normal file
@ -0,0 +1,27 @@
|
||||
using BookShopDataModels.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopContracts.ViewModels
|
||||
{
|
||||
public class OrderViewModel: IOrderModel
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public int BookId { get; set; }
|
||||
[DisplayName("Название книги")]
|
||||
public string BookName { get; set; } = string.Empty;
|
||||
public int ClientId { get; set; }
|
||||
[DisplayName("Фамилия клиента")]
|
||||
public string ClientName {get; set; } = string.Empty;
|
||||
[DisplayName("Количество")]
|
||||
public int Count { get; set; }
|
||||
[DisplayName("Сумма")]
|
||||
public double Sum { get; set; }
|
||||
[DisplayName("Дата заказа")]
|
||||
public DateTime DateCreate { get; set; } = DateTime.Now;
|
||||
}
|
||||
}
|
49
BookShopDataModels/BookShop.sln
Normal file
49
BookShopDataModels/BookShop.sln
Normal file
@ -0,0 +1,49 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.3.32825.248
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BookShopDataModels", "BookShopDataModels.csproj", "{434EDB25-6778-454F-9546-47E0280D55C1}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BookShopContracts", "..\BookShopContracts\BookShopContracts.csproj", "{61DCB588-5A1E-41A7-96E1-13448129E864}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BookShopBusinessLogic", "..\BookShopBusinessLogic\BookShopBusinessLogic.csproj", "{8C546AAA-4B01-42B8-9AB6-09E3753D3E0C}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BookShopDataBaseImplement", "..\BookShop\BookShopDataBaseImplement.csproj", "{C2ABA1F8-7A06-421E-B397-08A4E074885A}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BookShopView", "..\BookShopView\BookShopView.csproj", "{F60568D3-F4F3-4CCB-8CF6-D795F77A6DF1}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{434EDB25-6778-454F-9546-47E0280D55C1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{434EDB25-6778-454F-9546-47E0280D55C1}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{434EDB25-6778-454F-9546-47E0280D55C1}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{434EDB25-6778-454F-9546-47E0280D55C1}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{61DCB588-5A1E-41A7-96E1-13448129E864}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{61DCB588-5A1E-41A7-96E1-13448129E864}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{61DCB588-5A1E-41A7-96E1-13448129E864}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{61DCB588-5A1E-41A7-96E1-13448129E864}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{8C546AAA-4B01-42B8-9AB6-09E3753D3E0C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{8C546AAA-4B01-42B8-9AB6-09E3753D3E0C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8C546AAA-4B01-42B8-9AB6-09E3753D3E0C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8C546AAA-4B01-42B8-9AB6-09E3753D3E0C}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{C2ABA1F8-7A06-421E-B397-08A4E074885A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C2ABA1F8-7A06-421E-B397-08A4E074885A}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C2ABA1F8-7A06-421E-B397-08A4E074885A}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C2ABA1F8-7A06-421E-B397-08A4E074885A}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F60568D3-F4F3-4CCB-8CF6-D795F77A6DF1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F60568D3-F4F3-4CCB-8CF6-D795F77A6DF1}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F60568D3-F4F3-4CCB-8CF6-D795F77A6DF1}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F60568D3-F4F3-4CCB-8CF6-D795F77A6DF1}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {82811FF8-DBCF-4EE8-9BEC-7562CCC0D7A8}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
9
BookShopDataModels/BookShopDataModels.csproj
Normal file
9
BookShopDataModels/BookShopDataModels.csproj
Normal file
@ -0,0 +1,9 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
13
BookShopDataModels/IId.cs
Normal file
13
BookShopDataModels/IId.cs
Normal file
@ -0,0 +1,13 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopDataModels
|
||||
{
|
||||
public interface IId
|
||||
{
|
||||
int Id { get; }
|
||||
}
|
||||
}
|
15
BookShopDataModels/Models/IAuthorModel.cs
Normal file
15
BookShopDataModels/Models/IAuthorModel.cs
Normal file
@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopDataModels.Models
|
||||
{
|
||||
public interface IAuthorModel: IId
|
||||
{
|
||||
string Surname { get; }
|
||||
string Name { get; }
|
||||
string Patronymic { get; }
|
||||
}
|
||||
}
|
16
BookShopDataModels/Models/IBookModel.cs
Normal file
16
BookShopDataModels/Models/IBookModel.cs
Normal file
@ -0,0 +1,16 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopDataModels.Models
|
||||
{
|
||||
public interface IBookModel: IId
|
||||
{
|
||||
string Name { get; }
|
||||
double Cost { get; }
|
||||
int Count { get; }
|
||||
int GenreId { get; }
|
||||
}
|
||||
}
|
16
BookShopDataModels/Models/IClientModel.cs
Normal file
16
BookShopDataModels/Models/IClientModel.cs
Normal file
@ -0,0 +1,16 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopDataModels.Models
|
||||
{
|
||||
public interface IClientModel: IId
|
||||
{
|
||||
string Surname { get; }
|
||||
string Name { get; }
|
||||
string Patronymic { get; }
|
||||
string Email { get; }
|
||||
}
|
||||
}
|
13
BookShopDataModels/Models/IGenreModel.cs
Normal file
13
BookShopDataModels/Models/IGenreModel.cs
Normal file
@ -0,0 +1,13 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopDataModels.Models
|
||||
{
|
||||
public interface IGenreModel : IId
|
||||
{
|
||||
string Name { get; }
|
||||
}
|
||||
}
|
17
BookShopDataModels/Models/IOrderModel.cs
Normal file
17
BookShopDataModels/Models/IOrderModel.cs
Normal file
@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BookShopDataModels.Models
|
||||
{
|
||||
public interface IOrderModel: IId
|
||||
{
|
||||
int Count { get; }
|
||||
int BookId { get; }
|
||||
int ClientId { get; }
|
||||
double Sum { get; }
|
||||
DateTime DateCreate { get; }
|
||||
}
|
||||
}
|
11
BookShopView/BookShopView.csproj
Normal file
11
BookShopView/BookShopView.csproj
Normal file
@ -0,0 +1,11 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<TargetFramework>net6.0-windows</TargetFramework>
|
||||
<Nullable>enable</Nullable>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
176
BookShopView/FormMain.Designer.cs
generated
Normal file
176
BookShopView/FormMain.Designer.cs
generated
Normal file
@ -0,0 +1,176 @@
|
||||
namespace BookShopView
|
||||
{
|
||||
partial class FormMain
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||
this.справочникиToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.компонентыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.изделияToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ClientsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ComponentsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.ComponentGiftsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.OrdersToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.dataGridView = new System.Windows.Forms.DataGridView();
|
||||
this.buttonCreateOrder = new System.Windows.Forms.Button();
|
||||
this.buttonRef = new System.Windows.Forms.Button();
|
||||
this.жанрыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.menuStrip1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dataGridView)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// menuStrip1
|
||||
//
|
||||
this.menuStrip1.ImageScalingSize = new System.Drawing.Size(20, 20);
|
||||
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.справочникиToolStripMenuItem});
|
||||
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
||||
this.menuStrip1.Name = "menuStrip1";
|
||||
this.menuStrip1.Size = new System.Drawing.Size(1367, 28);
|
||||
this.menuStrip1.TabIndex = 0;
|
||||
this.menuStrip1.Text = "menuStrip1";
|
||||
//
|
||||
// справочникиToolStripMenuItem
|
||||
//
|
||||
this.справочникиToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.компонентыToolStripMenuItem,
|
||||
this.изделияToolStripMenuItem,
|
||||
this.ClientsToolStripMenuItem,
|
||||
this.жанрыToolStripMenuItem});
|
||||
this.справочникиToolStripMenuItem.Name = "справочникиToolStripMenuItem";
|
||||
this.справочникиToolStripMenuItem.Size = new System.Drawing.Size(117, 24);
|
||||
this.справочникиToolStripMenuItem.Text = "Справочники";
|
||||
//
|
||||
// компонентыToolStripMenuItem
|
||||
//
|
||||
this.компонентыToolStripMenuItem.Name = "компонентыToolStripMenuItem";
|
||||
this.компонентыToolStripMenuItem.Size = new System.Drawing.Size(224, 26);
|
||||
this.компонентыToolStripMenuItem.Text = "Авторы";
|
||||
//
|
||||
// изделияToolStripMenuItem
|
||||
//
|
||||
this.изделияToolStripMenuItem.Name = "изделияToolStripMenuItem";
|
||||
this.изделияToolStripMenuItem.Size = new System.Drawing.Size(224, 26);
|
||||
this.изделияToolStripMenuItem.Text = "Книги";
|
||||
//
|
||||
// ClientsToolStripMenuItem
|
||||
//
|
||||
this.ClientsToolStripMenuItem.Name = "ClientsToolStripMenuItem";
|
||||
this.ClientsToolStripMenuItem.Size = new System.Drawing.Size(224, 26);
|
||||
this.ClientsToolStripMenuItem.Text = "Клиенты";
|
||||
//
|
||||
// ComponentsToolStripMenuItem
|
||||
//
|
||||
this.ComponentsToolStripMenuItem.Name = "ComponentsToolStripMenuItem";
|
||||
this.ComponentsToolStripMenuItem.Size = new System.Drawing.Size(276, 26);
|
||||
this.ComponentsToolStripMenuItem.Text = "Список компонентов";
|
||||
//
|
||||
// ComponentGiftsToolStripMenuItem
|
||||
//
|
||||
this.ComponentGiftsToolStripMenuItem.Name = "ComponentGiftsToolStripMenuItem";
|
||||
this.ComponentGiftsToolStripMenuItem.Size = new System.Drawing.Size(276, 26);
|
||||
this.ComponentGiftsToolStripMenuItem.Text = "Компоненты по изделиям";
|
||||
//
|
||||
// OrdersToolStripMenuItem
|
||||
//
|
||||
this.OrdersToolStripMenuItem.Name = "OrdersToolStripMenuItem";
|
||||
this.OrdersToolStripMenuItem.Size = new System.Drawing.Size(276, 26);
|
||||
this.OrdersToolStripMenuItem.Text = "Список заказов";
|
||||
//
|
||||
// dataGridView
|
||||
//
|
||||
this.dataGridView.BackgroundColor = System.Drawing.SystemColors.Control;
|
||||
this.dataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||
this.dataGridView.Location = new System.Drawing.Point(12, 41);
|
||||
this.dataGridView.Name = "dataGridView";
|
||||
this.dataGridView.RowHeadersWidth = 51;
|
||||
this.dataGridView.RowTemplate.Height = 29;
|
||||
this.dataGridView.Size = new System.Drawing.Size(1123, 423);
|
||||
this.dataGridView.TabIndex = 1;
|
||||
//
|
||||
// buttonCreateOrder
|
||||
//
|
||||
this.buttonCreateOrder.Location = new System.Drawing.Point(1155, 167);
|
||||
this.buttonCreateOrder.Name = "buttonCreateOrder";
|
||||
this.buttonCreateOrder.Size = new System.Drawing.Size(189, 78);
|
||||
this.buttonCreateOrder.TabIndex = 2;
|
||||
this.buttonCreateOrder.Text = "Создать заказ";
|
||||
this.buttonCreateOrder.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// buttonRef
|
||||
//
|
||||
this.buttonRef.Location = new System.Drawing.Point(1155, 304);
|
||||
this.buttonRef.Name = "buttonRef";
|
||||
this.buttonRef.Size = new System.Drawing.Size(189, 78);
|
||||
this.buttonRef.TabIndex = 6;
|
||||
this.buttonRef.Text = "Обновить список";
|
||||
this.buttonRef.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// жанрыToolStripMenuItem
|
||||
//
|
||||
this.жанрыToolStripMenuItem.Name = "жанрыToolStripMenuItem";
|
||||
this.жанрыToolStripMenuItem.Size = new System.Drawing.Size(224, 26);
|
||||
this.жанрыToolStripMenuItem.Text = "Жанры";
|
||||
//
|
||||
// FormMain
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1367, 471);
|
||||
this.Controls.Add(this.buttonRef);
|
||||
this.Controls.Add(this.buttonCreateOrder);
|
||||
this.Controls.Add(this.dataGridView);
|
||||
this.Controls.Add(this.menuStrip1);
|
||||
this.MainMenuStrip = this.menuStrip1;
|
||||
this.Name = "FormMain";
|
||||
this.Text = "Книжный магазин";
|
||||
this.menuStrip1.ResumeLayout(false);
|
||||
this.menuStrip1.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dataGridView)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private MenuStrip menuStrip1;
|
||||
private ToolStripMenuItem справочникиToolStripMenuItem;
|
||||
private ToolStripMenuItem компонентыToolStripMenuItem;
|
||||
private ToolStripMenuItem изделияToolStripMenuItem;
|
||||
private DataGridView dataGridView;
|
||||
private Button buttonCreateOrder;
|
||||
private Button buttonRef;
|
||||
private ToolStripMenuItem отчетыToolStripMenuItem;
|
||||
private ToolStripMenuItem ComponentsToolStripMenuItem;
|
||||
private ToolStripMenuItem ComponentGiftsToolStripMenuItem;
|
||||
private ToolStripMenuItem OrdersToolStripMenuItem;
|
||||
private ToolStripMenuItem ClientsToolStripMenuItem;
|
||||
private ToolStripMenuItem жанрыToolStripMenuItem;
|
||||
}
|
||||
}
|
20
BookShopView/FormMain.cs
Normal file
20
BookShopView/FormMain.cs
Normal file
@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace BookShopView
|
||||
{
|
||||
public partial class FormMain : Form
|
||||
{
|
||||
public FormMain()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
66
BookShopView/FormMain.resx
Normal file
66
BookShopView/FormMain.resx
Normal file
@ -0,0 +1,66 @@
|
||||
<root>
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>36</value>
|
||||
</metadata>
|
||||
</root>
|
17
BookShopView/Program.cs
Normal file
17
BookShopView/Program.cs
Normal file
@ -0,0 +1,17 @@
|
||||
namespace BookShopView
|
||||
{
|
||||
internal static class Program
|
||||
{
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
// To customize application configuration such as set high DPI settings or default font,
|
||||
// see https://aka.ms/applicationconfiguration.
|
||||
ApplicationConfiguration.Initialize();
|
||||
Application.Run(new Form1());
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user