Learn_CSS
Changes
Learn_CSS/Learn_CSS.DI/DiRegistry.cs 26(+26 -0)
Learn_CSS/Learn_CSS.sln 7(+7 -0)
Learn_CSS/Learn_SQL.Model/BLL/SqlTester.cs 66(+66 -0)
Learn_CSS/Learn_SQL.Model/DAL/IDbExecuter.cs 42(+42 -0)
Details
Learn_CSS/Learn_CSS.DI/DiRegistry.cs 26(+26 -0)
diff --git a/Learn_CSS/Learn_CSS.DI/DiRegistry.cs b/Learn_CSS/Learn_CSS.DI/DiRegistry.cs
index e73f537..d62a04d 100644
--- a/Learn_CSS/Learn_CSS.DI/DiRegistry.cs
+++ b/Learn_CSS/Learn_CSS.DI/DiRegistry.cs
@@ -10,8 +10,13 @@ using Microsoft.Extensions.DependencyInjection;
using Learn_CSS.Model.DAL;
using Learn_CSS.Model.DAL.Serialization;
+using Learn_SQL.Model.DAL;
+
+
using Learn_CSS.Model.BLL;
+using Learn_SQL.Model.BLL;
+
namespace Learn_CSS.DI
{
public static class DiRegistry
@@ -31,6 +36,9 @@ namespace Learn_CSS.DI
RegistryDAL(services);
RegistryBLL(services);
+ RegistryDAL_SQL(services);
+ RegistryBLL_SQL(services);
+
ServiceLocator = services.BuildServiceProvider();
}
@@ -43,12 +51,30 @@ namespace Learn_CSS.DI
e => new CSSTaskStorage(AppPath, Resolve<TaskSerializerService>())
);
}
+
+ private static void RegistryDAL_SQL(IServiceCollection services)
+ {
+ services
+ .AddSingleton<ISqlTaskStorage, FakeStorage>()
+ .AddSingleton<IDbExecuter, DbExecute>(
+ e => new DbExecute(
+ @"Server = 127.0.0.1; Database = Vsevolod; User Id = Vsevolod; Password = qHuYlX;"
+)
+ );
+ }
+
+
private static void RegistryBLL(IServiceCollection services)
{
services
.AddSingleton<JsonIncludeService>()
.AddSingleton<TaskService>();
}
+ private static void RegistryBLL_SQL(IServiceCollection services)
+ {
+ services
+ .AddSingleton<SqlTester>();
+ }
}
}
diff --git a/Learn_CSS/Learn_CSS.DI/Learn_CSS.DI.csproj b/Learn_CSS/Learn_CSS.DI/Learn_CSS.DI.csproj
index 8a3451b..2b266fc 100644
--- a/Learn_CSS/Learn_CSS.DI/Learn_CSS.DI.csproj
+++ b/Learn_CSS/Learn_CSS.DI/Learn_CSS.DI.csproj
@@ -67,6 +67,10 @@
<Project>{62ae7956-1664-4f95-914b-635a2f4a244b}</Project>
<Name>Learn_CSS.Model</Name>
</ProjectReference>
+ <ProjectReference Include="..\Learn_SQL.Model\Learn_SQL.Model.csproj">
+ <Project>{79fa216d-8f5a-4726-b439-e2bf24bf5d88}</Project>
+ <Name>Learn_SQL.Model</Name>
+ </ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
\ No newline at end of file
Learn_CSS/Learn_CSS.sln 7(+7 -0)
diff --git a/Learn_CSS/Learn_CSS.sln b/Learn_CSS/Learn_CSS.sln
index f2bce71..c710092 100644
--- a/Learn_CSS/Learn_CSS.sln
+++ b/Learn_CSS/Learn_CSS.sln
@@ -19,6 +19,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Learn_CSS.Test.ConsoleTest"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Learn_CSS.DI", "Learn_CSS.DI\Learn_CSS.DI.csproj", "{98164B2A-8DB7-4F05-916D-46EA1EDFB83D}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Learn_SQL.Model", "Learn_SQL.Model\Learn_SQL.Model.csproj", "{79FA216D-8F5A-4726-B439-E2BF24BF5D88}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -45,6 +47,10 @@ Global
{98164B2A-8DB7-4F05-916D-46EA1EDFB83D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{98164B2A-8DB7-4F05-916D-46EA1EDFB83D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{98164B2A-8DB7-4F05-916D-46EA1EDFB83D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {79FA216D-8F5A-4726-B439-E2BF24BF5D88}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {79FA216D-8F5A-4726-B439-E2BF24BF5D88}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {79FA216D-8F5A-4726-B439-E2BF24BF5D88}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {79FA216D-8F5A-4726-B439-E2BF24BF5D88}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -55,6 +61,7 @@ Global
{62AE7956-1664-4F95-914B-635A2F4A244B} = {F6BBD07F-EB46-4DBB-841B-F70AD3619247}
{1542C1BF-8271-4231-A6D3-2639E1A6B69C} = {CF445768-C4A0-4ACB-B781-8539EADA367A}
{98164B2A-8DB7-4F05-916D-46EA1EDFB83D} = {F6BBD07F-EB46-4DBB-841B-F70AD3619247}
+ {79FA216D-8F5A-4726-B439-E2BF24BF5D88} = {F6BBD07F-EB46-4DBB-841B-F70AD3619247}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {9209A9FE-5DF5-4037-9E0D-2BAF13F46410}
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_0.txt b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_0.txt
new file mode 100644
index 0000000..eaede80
--- /dev/null
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_0.txt
@@ -0,0 +1,37 @@
+|FileName
+Task_0.txt
+|HTML_Text
+<p>
+
+ Установите линейный градиентный фон для элемента div, <br />
+
+ двигаясь сверху вниз, переходя от белого (white) к чёрному (black).<br />
+
+</p>
+|HTML_Template
+<div class="elem1" style="height: 300px; width:300px;">
+ <br />
+
+ <br />
+
+ <br />
+
+</div>
+|CSS_Template
+/*[placeholder] Enter your css:*/
+
+.elem1 {
+
+ background-image: linear-gradient(white, black);
+
+}
+|JSON_Result
+{
+
+"elem1": {
+
+ "background-image": "linear-gradient(rgb(255, 255, 255), rgb(0, 0, 0))"
+
+ }
+
+}
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_1.txt b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_1.txt
new file mode 100644
index 0000000..12db09c
--- /dev/null
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_1.txt
@@ -0,0 +1,24 @@
+|FileName
+Task_1.txt
+|HTML_Text
+<p>
+Установите линейный градиентный фон для элемента elem1 от верхнего <br />
+левого угла к нижнему правому, переходя от красного к синему.<br />
+</p>
+|HTML_Template
+<div class="elem1" style="height: 300px; width:300px;">
+ <br />
+ <br />
+ <br />
+</div>
+|CSS_Template
+/*[placeholder] Enter your css:*/
+.elem1 {
+ background-image: linear-gradient(to bottom right, red, blue);
+ }
+|JSON_Result
+{
+ "elem1": {
+ "background-image": "linear-gradient(to right bottom, rgb(255, 0, 0), rgb(0, 0, 255))"
+ }
+}
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_2.txt b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_2.txt
new file mode 100644
index 0000000..9f33eeb
--- /dev/null
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_2.txt
@@ -0,0 +1,24 @@
+|FileName
+Task_2.txt
+|HTML_Text
+<p>
+Установите линейный градиентный фон для элемента elem1, который идет <br />
+под углом 70 градусов, переходя от белого к зеленому.<br />
+</p>
+|HTML_Template
+<div class="elem1" style="height: 300px; width:300px;">
+ <br />
+ <br />
+ <br />
+</div>
+|CSS_Template
+/*[placeholder] Enter your css:*/
+.elem1 {
+ background-image: linear-gradient(70deg, white, green);
+ }
+|JSON_Result
+{
+ "elem1": {
+ "background-image": "linear-gradient(70deg, rgb(255, 255, 255), rgb(0, 128, 0))"
+ }
+}
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_3.txt b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_3.txt
new file mode 100644
index 0000000..838ad8c
--- /dev/null
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_3.txt
@@ -0,0 +1,24 @@
+|FileName
+Task_3.txt
+|HTML_Text
+<p>
+Установите линейный градиентный фон для элемента elem1, двигаясь сверху <br />
+вниз, переходя от «белого» к «красному» к «синему» к «зеленому».<br />
+</p>
+|HTML_Template
+<div class="elem1" style="height: 300px; width:300px;">
+ <br />
+ <br />
+ <br />
+</div>
+|CSS_Template
+/*[placeholder] Enter your css:*/
+.elem1 {
+ background-image: linear-gradient(white, red, blue, green);
+ }
+|JSON_Result
+{
+ "elem1": {
+ "background-image": "linear-gradient(rgb(255, 255, 255), rgb(255, 0, 0), rgb(0, 0, 255), rgb(0, 128, 0))"
+ }
+}
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_4.txt b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_4.txt
new file mode 100644
index 0000000..1b2422c
--- /dev/null
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_4.txt
@@ -0,0 +1,24 @@
+|FileName
+Task_4.txt
+|HTML_Text
+<p>
+Установите линейный градиентный фон для элемента elem1, двигаясь <br />
+сверху вниз, переходя от «rgba (0,255,0,0.2)» к «rgba (0,255,0,1)».<br />
+</p>
+|HTML_Template
+<div class="elem1" style="height: 300px; width:300px;">
+ <br />
+ <br />
+ <br />
+</div>
+|CSS_Template
+/*[placeholder] Enter your css:*/
+.elem1 {
+ background-image: linear-gradient(rgba(0,255,0,0.2), rgba(0,255,0,1));
+ }
+|JSON_Result
+{
+ "elem1": {
+ "background-image": "linear-gradient(rgba(0, 255, 0, 0.2), rgb(0, 255, 0))"
+ }
+}
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_5.txt b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_5.txt
new file mode 100644
index 0000000..2e4198f
--- /dev/null
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_5.txt
@@ -0,0 +1,23 @@
+|FileName
+Task_5.txt
+|HTML_Text
+<p>
+Установите радиальный градиентный фон для элемента elem1, переходя от красного к чёрному.<br />
+</p>
+|HTML_Template
+<div class="elem1" style="height: 300px; width:300px;">
+ <br />
+ <br />
+ <br />
+</div>
+|CSS_Template
+/*[placeholder] Enter your css:*/
+.elem1 {
+ background-image: radial-gradient(red, black);
+ }
+|JSON_Result
+{
+ "elem1": {
+ "background-image": "radial-gradient(rgb(255, 0, 0), rgb(0, 0, 0))"
+ }
+}
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_6.txt b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_6.txt
new file mode 100644
index 0000000..010b2f5
--- /dev/null
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/AppData/Task_6.txt
@@ -0,0 +1,24 @@
+|FileName
+Task_6.txt
+|HTML_Text
+<p>
+Установите радиальный градиентный фон для элемента elem1 <br />
+в форме круга с переходом от синего к красному.<br />
+</p>
+|HTML_Template
+<div class="elem1" style="height: 300px; width:300px;">
+ <br />
+ <br />
+ <br />
+</div>
+|CSS_Template
+/*[placeholder] Enter your css:*/
+.elem1 {
+ background-image: repeating-radial-gradient(circle, blue, red);
+ }
+|JSON_Result
+{
+ "elem1": {
+ "background-image": "repeating-radial-gradient(circle, rgb(0, 0, 255), rgb(255, 0, 0))"
+ }
+}
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/Learn_CSS.Test.ConsoleTest.csproj b/Learn_CSS/Learn_CSS.Test.ConsoleTest/Learn_CSS.Test.ConsoleTest.csproj
index 06ba0bc..f5398b4 100644
--- a/Learn_CSS/Learn_CSS.Test.ConsoleTest/Learn_CSS.Test.ConsoleTest.csproj
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/Learn_CSS.Test.ConsoleTest.csproj
@@ -49,5 +49,28 @@
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\Learn_CSS.DI\Learn_CSS.DI.csproj">
+ <Project>{98164b2a-8db7-4f05-916d-46ea1edfb83d}</Project>
+ <Name>Learn_CSS.DI</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\Learn_CSS.Model\Learn_CSS.Model.csproj">
+ <Project>{62ae7956-1664-4f95-914b-635a2f4a244b}</Project>
+ <Name>Learn_CSS.Model</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\Learn_SQL.Model\Learn_SQL.Model.csproj">
+ <Project>{79fa216d-8f5a-4726-b439-e2bf24bf5d88}</Project>
+ <Name>Learn_SQL.Model</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="AppData\Task_0.txt" />
+ <Content Include="AppData\Task_1.txt" />
+ <Content Include="AppData\Task_2.txt" />
+ <Content Include="AppData\Task_3.txt" />
+ <Content Include="AppData\Task_4.txt" />
+ <Content Include="AppData\Task_5.txt" />
+ <Content Include="AppData\Task_6.txt" />
+ </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
\ No newline at end of file
diff --git a/Learn_CSS/Learn_CSS.Test.ConsoleTest/Program.cs b/Learn_CSS/Learn_CSS.Test.ConsoleTest/Program.cs
index fe28f85..640a2f1 100644
--- a/Learn_CSS/Learn_CSS.Test.ConsoleTest/Program.cs
+++ b/Learn_CSS/Learn_CSS.Test.ConsoleTest/Program.cs
@@ -4,12 +4,46 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using Learn_CSS.DI;
+
+using Learn_SQL.Model.Entities;
+
+using Learn_SQL.Model.DAL;
+
+using Learn_SQL.Model.BLL;
+
namespace Learn_CSS.Test.ConsoleTest
{
class Program
{
+ static void SqlUserCase1()
+ {
+ UserSolution userSolution = new UserSolution()
+ {
+ TaskId = 1,
+ UserQuery =
+ @"
+SELECT model, type
+FROM Printer
+"
+ };
+
+
+ var tester = DiRegistry.Resolve<SqlTester>();
+ var testResult = tester.Test(userSolution);
+
+ if (!testResult)
+ {
+ throw new Exception("");
+ }
+ }
+
+
static void Main(string[] args)
{
+ DiRegistry.SetupRegistry("AppData");
+
+ SqlUserCase1();
}
}
}
Learn_CSS/Learn_SQL.Model/BLL/SqlTester.cs 66(+66 -0)
diff --git a/Learn_CSS/Learn_SQL.Model/BLL/SqlTester.cs b/Learn_CSS/Learn_SQL.Model/BLL/SqlTester.cs
new file mode 100644
index 0000000..f953149
--- /dev/null
+++ b/Learn_CSS/Learn_SQL.Model/BLL/SqlTester.cs
@@ -0,0 +1,66 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+using Learn_SQL.Model.Entities;
+
+using Learn_SQL.Model.DAL;
+
+namespace Learn_SQL.Model.BLL
+{
+ public class SqlTester
+ {
+ private readonly ISqlTaskStorage SqlTaskStorage;
+ private readonly IDbExecuter DbExecuter;
+
+
+ public SqlTester(
+ ISqlTaskStorage sqlTaskStorage,
+ IDbExecuter dbExecuter
+ )
+ {
+ SqlTaskStorage = sqlTaskStorage;
+ DbExecuter = dbExecuter;
+ }
+
+
+ public bool Test(UserSolution userSolution)
+ {
+ var task = SqlTaskStorage.GetTask(userSolution.TaskId);
+
+ var correctResult = DbExecuter.ExecteSelectQuery(task.CorrectSolution);
+ var userResult = DbExecuter.ExecteSelectQuery(userSolution.UserQuery);
+
+ if (correctResult.Rows.Count != userResult.Rows.Count)
+ {
+ return false;
+ }
+
+ if (correctResult.Columns.Count != userResult.Columns.Count)
+ {
+ return false;
+ }
+
+
+ for (int i = 0; i < correctResult.Rows.Count; i++)
+ {
+ for (int j = 0; j < correctResult.Columns.Count; j++)
+ {
+ var eql =
+ correctResult.Rows[i].ItemArray[j].Equals(
+ userResult.Rows[i].ItemArray[j]
+ );
+
+ if (!eql)
+ {
+ return false;
+ }
+ }
+ }
+
+ return true;
+ }
+ }
+}
Learn_CSS/Learn_SQL.Model/DAL/IDbExecuter.cs 42(+42 -0)
diff --git a/Learn_CSS/Learn_SQL.Model/DAL/IDbExecuter.cs b/Learn_CSS/Learn_SQL.Model/DAL/IDbExecuter.cs
new file mode 100644
index 0000000..c3c6b07
--- /dev/null
+++ b/Learn_CSS/Learn_SQL.Model/DAL/IDbExecuter.cs
@@ -0,0 +1,42 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+using System.Data;
+using System.Data.SqlClient;
+
+namespace Learn_SQL.Model.DAL
+{
+ public interface IDbExecuter
+ {
+ DataTable ExecteSelectQuery(string query);
+ }
+
+ public class DbExecute
+ : IDbExecuter
+ {
+ private readonly string ConnectionString;
+
+ public DbExecute(string connectionString)
+ {
+ ConnectionString = connectionString;
+ }
+
+
+ public DataTable ExecteSelectQuery(string query)
+ {
+ using (SqlConnection connection = new SqlConnection(ConnectionString))
+ using (SqlCommand command = new SqlCommand(query, connection))
+ using (SqlDataAdapter adapter = new SqlDataAdapter(command))
+ {
+ DataTable result = new DataTable();
+ adapter.Fill(result);
+
+ return result;
+ }
+ }
+ }
+
+}
diff --git a/Learn_CSS/Learn_SQL.Model/DAL/ISqlTaskStorage.cs b/Learn_CSS/Learn_SQL.Model/DAL/ISqlTaskStorage.cs
new file mode 100644
index 0000000..a4a0a41
--- /dev/null
+++ b/Learn_CSS/Learn_SQL.Model/DAL/ISqlTaskStorage.cs
@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+using Learn_SQL.Model.Entities;
+
+namespace Learn_SQL.Model.DAL
+{
+ public interface ISqlTaskStorage
+ {
+ SqlTaskData GetTask(int id);
+ }
+
+ public class FakeStorage
+ : ISqlTaskStorage
+ {
+ public SqlTaskData GetTask(int id)
+ {
+ return new SqlTaskData()
+ {
+ Id = id,
+ TaskText = "TaskText",
+ CorrectSolution =
+ @"
+SELECT model, type
+FROM Printer
+"
+ };
+ }
+ }
+
+
+}
diff --git a/Learn_CSS/Learn_SQL.Model/Entities/SqlTaskData.cs b/Learn_CSS/Learn_SQL.Model/Entities/SqlTaskData.cs
new file mode 100644
index 0000000..8aae087
--- /dev/null
+++ b/Learn_CSS/Learn_SQL.Model/Entities/SqlTaskData.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Learn_SQL.Model.Entities
+{
+ public class SqlTaskData
+ {
+ public int Id { set; get; }
+ public string TaskText { set; get; }
+ //public string InitialScript { set; get; }
+ public string CorrectSolution { set; get; }
+ }
+
+
+ public class UserSolution
+ {
+ public int TaskId { set; get; }
+ public string UserQuery { set; get; }
+ }
+
+}
diff --git a/Learn_CSS/Learn_SQL.Model/Learn_SQL.Model.csproj b/Learn_CSS/Learn_SQL.Model/Learn_SQL.Model.csproj
new file mode 100644
index 0000000..15c4806
--- /dev/null
+++ b/Learn_CSS/Learn_SQL.Model/Learn_SQL.Model.csproj
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProjectGuid>{79FA216D-8F5A-4726-B439-E2BF24BF5D88}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>Learn_SQL.Model</RootNamespace>
+ <AssemblyName>Learn_SQL.Model</AssemblyName>
+ <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ <Deterministic>true</Deterministic>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Core" />
+ <Reference Include="System.Xml.Linq" />
+ <Reference Include="System.Data.DataSetExtensions" />
+ <Reference Include="Microsoft.CSharp" />
+ <Reference Include="System.Data" />
+ <Reference Include="System.Net.Http" />
+ <Reference Include="System.Xml" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="BLL\SqlTester.cs" />
+ <Compile Include="DAL\IDbExecuter.cs" />
+ <Compile Include="DAL\ISqlTaskStorage.cs" />
+ <Compile Include="Entities\SqlTaskData.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+</Project>
\ No newline at end of file
diff --git a/Learn_CSS/Learn_SQL.Model/Properties/AssemblyInfo.cs b/Learn_CSS/Learn_SQL.Model/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..1c52094
--- /dev/null
+++ b/Learn_CSS/Learn_SQL.Model/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Общие сведения об этой сборке предоставляются следующим набором
+// набора атрибутов. Измените значения этих атрибутов для изменения сведений,
+// связанные со сборкой.
+[assembly: AssemblyTitle("Learn_SQL.Model")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("Learn_SQL.Model")]
+[assembly: AssemblyCopyright("Copyright © 2021")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми
+// для компонентов COM. Если необходимо обратиться к типу в этой сборке через
+// COM, задайте атрибуту ComVisible значение TRUE для этого типа.
+[assembly: ComVisible(false)]
+
+// Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM
+[assembly: Guid("79fa216d-8f5a-4726-b439-e2bf24bf5d88")]
+
+// Сведения о версии сборки состоят из указанных ниже четырех значений:
+//
+// Основной номер версии
+// Дополнительный номер версии
+// Номер сборки
+// Редакция
+//
+// Можно задать все значения или принять номера сборки и редакции по умолчанию
+// используя "*", как показано ниже:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]