diff --git a/.sonarqube/conf/0/FilesToAnalyze.txt b/.sonarqube/conf/0/FilesToAnalyze.txt
new file mode 100644
index 0000000..4637e78
--- /dev/null
+++ b/.sonarqube/conf/0/FilesToAnalyze.txt
@@ -0,0 +1,11 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\Controllers\WeatherForecastController.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\Program.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\WeatherForecast.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\obj\Debug\net8.0\WebApplication1.GlobalUsings.g.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\obj\Debug\net8.0\.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\obj\Debug\net8.0\WebApplication1.AssemblyInfo.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\obj\Debug\net8.0\WebApplication1.MvcApplicationPartsAssemblyInfo.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\appsettings.Development.json
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\appsettings.json
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\WebApplication1.http
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\Properties\launchSettings.json
diff --git a/.sonarqube/conf/0/ProjectOutFolderPath.txt b/.sonarqube/conf/0/ProjectOutFolderPath.txt
new file mode 100644
index 0000000..08a8e12
--- /dev/null
+++ b/.sonarqube/conf/0/ProjectOutFolderPath.txt
@@ -0,0 +1 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\0
diff --git a/.sonarqube/conf/0/SonarProjectConfig.xml b/.sonarqube/conf/0/SonarProjectConfig.xml
new file mode 100644
index 0000000..05266e0
--- /dev/null
+++ b/.sonarqube/conf/0/SonarProjectConfig.xml
@@ -0,0 +1,9 @@
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\SonarQubeAnalysisConfig.xml
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\WebApplication1\WebApplication1.csproj
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\0\FilesToAnalyze.txt
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\0
+ Product
+ net8.0
+
\ No newline at end of file
diff --git a/.sonarqube/conf/1/FilesToAnalyze.txt b/.sonarqube/conf/1/FilesToAnalyze.txt
new file mode 100644
index 0000000..41c3225
--- /dev/null
+++ b/.sonarqube/conf/1/FilesToAnalyze.txt
@@ -0,0 +1,11 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Games\Extentions\ServiceCollectionExtentions.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Games\GameService.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Games\IGameService.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Numbers\Extentions\ServiceCollectionExtentions.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Numbers\INumbersService.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Numbers\NumbersService.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Tickets\Extentions\ServiceCollectionExtentions.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Tickets\ITicketRepository.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Tickets\ITicketService.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Tickets\Models\LotteryTicket.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Tickets\TicketService.cs
diff --git a/.sonarqube/conf/1/ProjectOutFolderPath.txt b/.sonarqube/conf/1/ProjectOutFolderPath.txt
new file mode 100644
index 0000000..256f8b2
--- /dev/null
+++ b/.sonarqube/conf/1/ProjectOutFolderPath.txt
@@ -0,0 +1 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\1
diff --git a/.sonarqube/conf/1/SonarProjectConfig.xml b/.sonarqube/conf/1/SonarProjectConfig.xml
new file mode 100644
index 0000000..f1d9130
--- /dev/null
+++ b/.sonarqube/conf/1/SonarProjectConfig.xml
@@ -0,0 +1,9 @@
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\SonarQubeAnalysisConfig.xml
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\Services\Services.csproj
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\1\FilesToAnalyze.txt
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\1
+ Product
+ net8.0
+
\ No newline at end of file
diff --git a/.sonarqube/conf/2/FilesToAnalyze.txt b/.sonarqube/conf/2/FilesToAnalyze.txt
new file mode 100644
index 0000000..bc14328
--- /dev/null
+++ b/.sonarqube/conf/2/FilesToAnalyze.txt
@@ -0,0 +1,11 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Tests\GlobalUsings.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Tests\NumbersServiceTests.cs
+C:\Users\Evgeny\.nuget\packages\microsoft.net.test.sdk\17.6.0\build\netcoreapp3.1\Microsoft.NET.Test.Sdk.Program.cs
+C:\Users\Evgeny\.nuget\packages\microsoft.testplatform.testhost\17.6.0\build\netcoreapp3.1\x64\testhost.exe
+C:\Users\Evgeny\.nuget\packages\microsoft.testplatform.testhost\17.6.0\build\netcoreapp3.1\x64\testhost.dll
+C:\Users\Evgeny\.nuget\packages\nunit3testadapter\4.2.1\build\netcoreapp2.1\NUnit3.TestAdapter.dll
+C:\Users\Evgeny\.nuget\packages\nunit3testadapter\4.2.1\build\netcoreapp2.1\NUnit3.TestAdapter.pdb
+C:\Users\Evgeny\.nuget\packages\nunit3testadapter\4.2.1\build\netcoreapp2.1\nunit.engine.dll
+C:\Users\Evgeny\.nuget\packages\nunit3testadapter\4.2.1\build\netcoreapp2.1\nunit.engine.api.dll
+C:\Users\Evgeny\.nuget\packages\nunit3testadapter\4.2.1\build\netcoreapp2.1\nunit.engine.core.dll
+C:\Users\Evgeny\.nuget\packages\nunit3testadapter\4.2.1\build\netcoreapp2.1\testcentric.engine.metadata.dll
diff --git a/.sonarqube/conf/2/ProjectOutFolderPath.txt b/.sonarqube/conf/2/ProjectOutFolderPath.txt
new file mode 100644
index 0000000..bc797e3
--- /dev/null
+++ b/.sonarqube/conf/2/ProjectOutFolderPath.txt
@@ -0,0 +1 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\2
diff --git a/.sonarqube/conf/2/SonarProjectConfig.xml b/.sonarqube/conf/2/SonarProjectConfig.xml
new file mode 100644
index 0000000..0fd0798
--- /dev/null
+++ b/.sonarqube/conf/2/SonarProjectConfig.xml
@@ -0,0 +1,9 @@
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\SonarQubeAnalysisConfig.xml
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\Tests\Tests.csproj
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\2\FilesToAnalyze.txt
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\2
+ Test
+ net8.0
+
\ No newline at end of file
diff --git a/.sonarqube/conf/3/FilesToAnalyze.txt b/.sonarqube/conf/3/FilesToAnalyze.txt
new file mode 100644
index 0000000..b1927ed
--- /dev/null
+++ b/.sonarqube/conf/3/FilesToAnalyze.txt
@@ -0,0 +1,2 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Data\Extentions\ServiceCollectionExtentions.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\Data\FakeTicketRepository.cs
diff --git a/.sonarqube/conf/3/ProjectOutFolderPath.txt b/.sonarqube/conf/3/ProjectOutFolderPath.txt
new file mode 100644
index 0000000..bc49724
--- /dev/null
+++ b/.sonarqube/conf/3/ProjectOutFolderPath.txt
@@ -0,0 +1 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\3
diff --git a/.sonarqube/conf/3/SonarProjectConfig.xml b/.sonarqube/conf/3/SonarProjectConfig.xml
new file mode 100644
index 0000000..6e7b92d
--- /dev/null
+++ b/.sonarqube/conf/3/SonarProjectConfig.xml
@@ -0,0 +1,9 @@
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\SonarQubeAnalysisConfig.xml
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\Data\Data.csproj
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\3\FilesToAnalyze.txt
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\3
+ Product
+ net8.0
+
\ No newline at end of file
diff --git a/.sonarqube/conf/4/FilesToAnalyze.txt b/.sonarqube/conf/4/FilesToAnalyze.txt
new file mode 100644
index 0000000..74066b8
--- /dev/null
+++ b/.sonarqube/conf/4/FilesToAnalyze.txt
@@ -0,0 +1,8 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\Program.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\Worker.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\obj\Debug\net8.0\WorkerService1.GlobalUsings.g.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\obj\Debug\net8.0\.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\obj\Debug\net8.0\WorkerService1.AssemblyInfo.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\appsettings.Development.json
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\appsettings.json
+C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\Properties\launchSettings.json
diff --git a/.sonarqube/conf/4/ProjectOutFolderPath.txt b/.sonarqube/conf/4/ProjectOutFolderPath.txt
new file mode 100644
index 0000000..874d3dc
--- /dev/null
+++ b/.sonarqube/conf/4/ProjectOutFolderPath.txt
@@ -0,0 +1 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\4
diff --git a/.sonarqube/conf/4/SonarProjectConfig.xml b/.sonarqube/conf/4/SonarProjectConfig.xml
new file mode 100644
index 0000000..89a6241
--- /dev/null
+++ b/.sonarqube/conf/4/SonarProjectConfig.xml
@@ -0,0 +1,9 @@
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\SonarQubeAnalysisConfig.xml
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\WorkerService1\WorkerService1.csproj
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\4\FilesToAnalyze.txt
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\4
+ Product
+ net8.0
+
\ No newline at end of file
diff --git a/.sonarqube/conf/5/FilesToAnalyze.txt b/.sonarqube/conf/5/FilesToAnalyze.txt
new file mode 100644
index 0000000..649fad2
--- /dev/null
+++ b/.sonarqube/conf/5/FilesToAnalyze.txt
@@ -0,0 +1,28 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Data\BlazorApp1Context.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Program.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\obj\Debug\net8.0\BlazorApp1.GlobalUsings.g.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\obj\Debug\net8.0\.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\obj\Debug\net8.0\BlazorApp1.AssemblyInfo.cs
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\wwwroot\app.css
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\wwwroot\bootstrap\bootstrap.min.css
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\wwwroot\bootstrap\bootstrap.min.css.map
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\wwwroot\favicon.png
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\appsettings.Development.json
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\appsettings.json
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\App.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Layout\MainLayout.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Layout\NavMenu.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\Counter.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\Error.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\Home.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\LotteryTicketPages\Create.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\LotteryTicketPages\Delete.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\LotteryTicketPages\Details.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\LotteryTicketPages\Edit.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\LotteryTicketPages\Index.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Pages\Weather.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Routes.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\_Imports.razor
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Layout\MainLayout.razor.css
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Components\Layout\NavMenu.razor.css
+C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\Properties\launchSettings.json
diff --git a/.sonarqube/conf/5/ProjectOutFolderPath.txt b/.sonarqube/conf/5/ProjectOutFolderPath.txt
new file mode 100644
index 0000000..f6ad2a8
--- /dev/null
+++ b/.sonarqube/conf/5/ProjectOutFolderPath.txt
@@ -0,0 +1 @@
+C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\5
diff --git a/.sonarqube/conf/5/SonarProjectConfig.xml b/.sonarqube/conf/5/SonarProjectConfig.xml
new file mode 100644
index 0000000..f34d2e1
--- /dev/null
+++ b/.sonarqube/conf/5/SonarProjectConfig.xml
@@ -0,0 +1,9 @@
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\SonarQubeAnalysisConfig.xml
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\BlazorApp1\BlazorApp1.csproj
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\5\FilesToAnalyze.txt
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out\5
+ Product
+ net8.0
+
\ No newline at end of file
diff --git a/.sonarqube/conf/Sonar-cs-none.ruleset b/.sonarqube/conf/Sonar-cs-none.ruleset
new file mode 100644
index 0000000..3c8c037
--- /dev/null
+++ b/.sonarqube/conf/Sonar-cs-none.ruleset
@@ -0,0 +1,455 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.sonarqube/conf/Sonar-cs.ruleset b/.sonarqube/conf/Sonar-cs.ruleset
new file mode 100644
index 0000000..4187d4f
--- /dev/null
+++ b/.sonarqube/conf/Sonar-cs.ruleset
@@ -0,0 +1,455 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.sonarqube/conf/Sonar-vbnet-none.ruleset b/.sonarqube/conf/Sonar-vbnet-none.ruleset
new file mode 100644
index 0000000..442672d
--- /dev/null
+++ b/.sonarqube/conf/Sonar-vbnet-none.ruleset
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.sonarqube/conf/Sonar-vbnet.ruleset b/.sonarqube/conf/Sonar-vbnet.ruleset
new file mode 100644
index 0000000..fa67c41
--- /dev/null
+++ b/.sonarqube/conf/Sonar-vbnet.ruleset
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.sonarqube/conf/SonarQubeAnalysisConfig.xml b/.sonarqube/conf/SonarQubeAnalysisConfig.xml
new file mode 100644
index 0000000..df76175
--- /dev/null
+++ b/.sonarqube/conf/SonarQubeAnalysisConfig.xml
@@ -0,0 +1,186 @@
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\out
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\bin
+ C:\Users\Evgeny\source\repos\Lottery.Tickets
+ C:\Users\Evgeny\.sonar\cache\11a61a94d383e755b08b4e5890a13d148bc9f95b7149cbbeec62efb8c75a4a67\OpenJDK17U-jre_x64_windows_hotspot_17.0.13_11.zip_extracted\jdk-17.0.13+11-jre/bin/java.exe
+ true
+ true
+ false
+ http://localhost:9000
+ 25.5.0.107428
+ Lottery
+
+
+
+
+
+
+
+
+
+ true
+ .ts,.tsx,.cts,.mts
+ false
+ ipynb
+ false
+ **/vendor/**
+ .tf
+ true
+ 60
+ true
+ .rs
+ SonarAnalyzer.CSharp
+ https://schema.management.azure.com/schemas/,http://schema.management.azure.com/schemas/
+ false
+ **/src/main/resources/**/*app*.properties,**/src/main/resources/**/*app*.yaml,**/src/main/resources/**/*app*.yml
+ false
+ .css,.less,.scss,.sass
+ Dockerfile,*.dockerfile
+ .html,.xhtml,.cshtml,.vbhtml,.aspx,.ascx,.rhtml,.erb,.shtm,.shtml,.cmp,.twig
+ false
+ false
+ true
+ false
+ vbnet
+ .scala
+ true
+ SonarAnalyzer.VisualBasic
+ AWSTemplateFormatVersion
+ 30
+ true
+ 30
+ False
+ 52
+ https://secure.gravatar.com/avatar/{EMAIL_MD5}.jpg?s={SIZE}&d=identicon
+ 600
+ .jsp,.jspf,.jspx
+ 1000
+ amd,applescript,atomtest,browser,commonjs,embertest,greasemonkey,jasmine,jest,jquery,meteor,mocha,mongo,nashorn,node,phantomjs,prototypejs,protractor,qunit,serviceworker,shared-node-browser,shelljs,webextensions,worker
+ false
+ **/vendor/**
+ false
+ .vb
+ 10.9.0.115408
+ 30
+ true
+ py
+ .cs,.razor
+ true
+ true
+ SonarAnalyzer-vbnet-10.9.0.115408.zip
+ .java,.jav
+ .kt,.kts
+ php,php3,php4,php5,phtml,inc
+ .xml,.xsd,.xsl,.config
+ 260
+ true
+ 3600000
+ true
+ false
+ coverage-reports/*coverage-*.xml
+ true
+ false
+ .go
+ true
+ sonarqube
+ 104
+ true
+ **/vendor/**
+ true
+ false
+ as
+ 20
+ false
+ https://api.github.com/
+ .rb
+ true
+ true
+ xunit-reports/xunit-result-*.xml
+ angular,goog,google,OpenLayers,d3,dojo,dojox,dijit,Backbone,moment,casper,_,sap
+ 24
+ .yaml,.yml
+ false
+ true
+ https://github.com/
+ true
+ 10.9.0.115408
+ 10.9.0.115408
+ 4
+ SonarAnalyzer.VisualBasic
+ false
+ csharp
+ true
+ False
+ SonarAnalyzer-vbnet-10.9.0.115408.zip
+ .json
+ SAML
+ true
+ coverage/.resultset.json
+ **/*.sh,**/*.bash,**/*.zsh,**/*.ksh,**/*.ps1,**/*.properties,**/*.conf,**/*.pem,**/*.config,.env,.aws/config
+ true
+ SonarAnalyzer-csharp-10.9.0.115408.zip
+ true
+ main
+ SonarAnalyzer-csharp-10.9.0.115408.zip
+ false
+ SonarAnalyzer.CSharp
+ csharp
+ 0.05,0.1,0.2,0.5
+ false
+ true
+ 10.9.0.115408
+ false
+ true
+ .bicep
+ .js,.jsx,.cjs,.mjs,.vue
+ false
+ NOT_ACCEPTED
+ https://gitlab.com
+ false
+ vbnet
+ true
+ https://downloads.sonarsource.com/sonarqube/update/update-center.properties
+ 147B411E-AZcX5EkFb735hXQSVAMc
+ 17.07.2025 15:16:30
+
+
+ http://localhost:9000
+
+
+
+
+ cs
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\Sonar-cs.ruleset
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\Sonar-cs-none.ruleset
+
+
+
+ C:\Users\Evgeny\AppData\Local\Temp\.sonarqube\resources\0\SonarAnalyzer.CSharp.dll
+ C:\Users\Evgeny\AppData\Local\Temp\.sonarqube\resources\0\THIRD-PARTY-NOTICES.txt
+
+
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\cs\SonarLint.xml
+
+
+
+ vbnet
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\Sonar-vbnet.ruleset
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\Sonar-vbnet-none.ruleset
+
+
+
+ C:\Users\Evgeny\AppData\Local\Temp\.sonarqube\resources\1\SonarAnalyzer.VisualBasic.dll
+ C:\Users\Evgeny\AppData\Local\Temp\.sonarqube\resources\1\THIRD-PARTY-NOTICES.txt
+
+
+
+
+ C:\Users\Evgeny\source\repos\Lottery.Tickets\.sonarqube\conf\vbnet\SonarLint.xml
+
+
+
+
\ No newline at end of file
diff --git a/.sonarqube/conf/cs/SonarLint.xml b/.sonarqube/conf/cs/SonarLint.xml
new file mode 100644
index 0000000..968d5b0
--- /dev/null
+++ b/.sonarqube/conf/cs/SonarLint.xml
@@ -0,0 +1,1092 @@
+
+
+
+
+ sonar.cs.ignoreHeaderComments
+ true
+
+
+ sonar.cs.analyzeGeneratedCode
+ false
+
+
+ sonar.cs.file.suffixes
+ .cs,.razor
+
+
+ sonar.cs.analyzeRazorCode
+ true
+
+
+ sonar.cs.roslyn.ignoreIssues
+ false
+
+
+
+
+ S1133
+
+
+ S1134
+
+
+ S1135
+
+
+ S2115
+
+
+ S2223
+
+
+ S2225
+
+
+ S2342
+
+
+ flagsAttributeFormat
+ ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?s$
+
+
+ format
+ ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
+
+
+
+
+ S2344
+
+
+ S2345
+
+
+ S2346
+
+
+ S3431
+
+
+ S3433
+
+
+ S3447
+
+
+ S4524
+
+
+ S5856
+
+
+ S1006
+
+
+ S1110
+
+
+ S1116
+
+
+ S1117
+
+
+ S1118
+
+
+ S1121
+
+
+ S1123
+
+
+ S1125
+
+
+ S1144
+
+
+ S1244
+
+
+ S1264
+
+
+ S1479
+
+
+ maximum
+ 30
+
+
+
+
+ S1481
+
+
+ S2114
+
+
+ S2201
+
+
+ S2219
+
+
+ S2234
+
+
+ S2325
+
+
+ S2326
+
+
+ S2328
+
+
+ S2386
+
+
+ S2445
+
+
+ S2479
+
+
+ S2681
+
+
+ S2688
+
+
+ S2692
+
+
+ S2696
+
+
+ S2699
+
+
+ S3236
+
+
+ S3237
+
+
+ S3358
+
+
+ S3415
+
+
+ S3427
+
+
+ S3440
+
+
+ S3442
+
+
+ S3443
+
+
+ S3444
+
+
+ S3445
+
+
+ S3449
+
+
+ S3597
+
+
+ S3598
+
+
+ S3776
+
+
+ threshold
+ 15
+
+
+ propertyThreshold
+ 3
+
+
+
+
+ S3897
+
+
+ S4200
+
+
+ S4502
+
+
+ S4507
+
+
+ S4635
+
+
+ S6800
+
+
+ S6930
+
+
+ S6931
+
+
+ S6932
+
+
+ S6934
+
+
+ S1066
+
+
+ S1155
+
+
+ S1172
+
+
+ S1185
+
+
+ S1186
+
+
+ S2123
+
+
+ S2245
+
+
+ S2275
+
+
+ S2365
+
+
+ S2368
+
+
+ S2486
+
+
+ S3005
+
+
+ S3241
+
+
+ S3244
+
+
+ S3246
+
+
+ S3247
+
+
+ S3249
+
+
+ S3330
+
+
+ S3363
+
+
+ S3451
+
+
+ S3453
+
+
+ S3456
+
+
+ S3457
+
+
+ S3458
+
+
+ S4201
+
+
+ S4210
+
+
+ S4211
+
+
+ S4423
+
+
+ S4426
+
+
+ S4456
+
+
+ S4545
+
+
+ S5542
+
+
+ S5547
+
+
+ S5659
+
+
+ S5753
+
+
+ S6960
+
+
+ S6961
+
+
+ S6962
+
+
+ S6964
+
+
+ S6965
+
+
+ S6966
+
+
+ S6967
+
+
+ S1048
+
+
+ S1163
+
+
+ S1168
+
+
+ S1656
+
+
+ S2139
+
+
+ S2251
+
+
+ S2252
+
+
+ S2257
+
+
+ S2372
+
+
+ S2376
+
+
+ S2629
+
+
+ S2743
+
+
+ S2757
+
+
+ S2995
+
+
+ S2996
+
+
+ S3217
+
+
+ S3218
+
+
+ S3220
+
+
+ S3343
+
+
+ S3346
+
+
+ S3450
+
+
+ S3459
+
+
+ S3464
+
+
+ S3466
+
+
+ S3600
+
+
+ S3963
+
+
+ S4428
+
+
+ S4433
+
+
+ S4663
+
+
+ S4790
+
+
+ S5766
+
+
+ S6607
+
+
+ S6608
+
+
+ S6609
+
+
+ S6610
+
+
+ S6612
+
+
+ S6613
+
+
+ S6617
+
+
+ S6618
+
+
+ S6968
+
+
+ S818
+
+
+ S907
+
+
+ S927
+
+
+ S1104
+
+
+ S1206
+
+
+ S1210
+
+
+ S1215
+
+
+ S1313
+
+
+ S1450
+
+
+ S1643
+
+
+ S1694
+
+
+ S1696
+
+
+ S1699
+
+
+ S1751
+
+
+ S1764
+
+
+ S1871
+
+
+ S1905
+
+
+ S1939
+
+
+ S1940
+
+
+ S1944
+
+
+ S1994
+
+
+ S2306
+
+
+ S2436
+
+
+ maxMethod
+ 3
+
+
+ max
+ 2
+
+
+
+
+ S2437
+
+
+ S2551
+
+
+ S2612
+
+
+ S2674
+
+
+ S2737
+
+
+ S2755
+
+
+ S2761
+
+
+ S2857
+
+
+ S2970
+
+
+ S2971
+
+
+ S2997
+
+
+ S3400
+
+
+ S3603
+
+
+ S3604
+
+
+ S3610
+
+
+ S3626
+
+
+ S3869
+
+
+ S3871
+
+
+ S3875
+
+
+ S3877
+
+
+ S3878
+
+
+ S3881
+
+
+ S3885
+
+
+ S3887
+
+
+ S3889
+
+
+ S3971
+
+
+ S3972
+
+
+ S3973
+
+
+ S3981
+
+
+ S3984
+
+
+ S3993
+
+
+ S3998
+
+
+ S4061
+
+
+ S4830
+
+
+ S5034
+
+
+ S5042
+
+
+ S6377
+
+
+ S107
+
+
+ max
+ 7
+
+
+
+
+ S108
+
+
+ S110
+
+
+ max
+ 5
+
+
+
+
+ S112
+
+
+ S125
+
+
+ S127
+
+
+ S1607
+
+
+ S1848
+
+
+ S1854
+
+
+ S1862
+
+
+ S2068
+
+
+ credentialWords
+ password, passwd, pwd, passphrase
+
+
+
+
+ S2183
+
+
+ S2184
+
+
+ S2187
+
+
+ S2198
+
+
+ S2701
+
+
+ S2925
+
+
+ S2930
+
+
+ S2933
+
+
+ S2934
+
+
+ S2953
+
+
+ S2955
+
+
+ S3168
+
+
+ S3169
+
+
+ S3397
+
+
+ S3398
+
+
+ S3903
+
+
+ S3904
+
+
+ S3923
+
+
+ S3925
+
+
+ S3926
+
+
+ S3927
+
+
+ S3928
+
+
+ S4015
+
+
+ S4019
+
+
+ S4070
+
+
+ S4136
+
+
+ S4487
+
+
+ S5332
+
+
+ S5344
+
+
+ S5693
+
+
+ fileUploadSizeLimit
+ 8388608
+
+
+
+
+ S6420
+
+
+ S6422
+
+
+ S6424
+
+
+ S6664
+
+
+ debugThreshold
+ 4
+
+
+ errorThreshold
+ 1
+
+
+ informationThreshold
+ 2
+
+
+ warningThreshold
+ 1
+
+
+
+
+ S6667
+
+
+ S6668
+
+
+ S6669
+
+
+ format
+ ^_?[Ll]og(ger)?$
+
+
+
+
+ S6674
+
+
+ S6675
+
+
+ S6677
+
+
+ S6678
+
+
+ S6797
+
+
+ S7039
+
+
+ S101
+
+
+ S1075
+
+
+ S1192
+
+
+ threshold
+ 3
+
+
+
+
+ S1199
+
+
+ S2077
+
+
+ S2166
+
+
+ S2178
+
+
+ S2190
+
+
+ S2290
+
+
+ S2291
+
+
+ S2292
+
+
+ S3010
+
+
+ S3011
+
+
+ S3172
+
+
+ S3251
+
+
+ S3256
+
+
+ S3260
+
+
+ S3261
+
+
+ S3262
+
+
+ S3263
+
+
+ S3264
+
+
+ S3265
+
+
+ S3267
+
+
+ S3376
+
+
+ S4050
+
+
+ S4052
+
+
+ S4143
+
+
+ S4144
+
+
+ S4220
+
+
+ S4581
+
+
+ S4583
+
+
+ S4586
+
+
+ S5443
+
+
+ S5445
+
+
+ S6418
+
+
+ secretWords
+ api[_\-]?key, auth, credential, secret, token
+
+
+ randomnessSensibility
+ 3
+
+
+
+
+ S6419
+
+
+ S6444
+
+
+ S6561
+
+
+ S6580
+
+
+ S6588
+
+
+ S6640
+
+
+ S6670
+
+
+ S6672
+
+
+ S6673
+
+
+ S6798
+
+
+ S2092
+
+
+ S2094
+
+
+ S3060
+
+
+ S3063
+
+
+ S4035
+
+
+ S4036
+
+
+ S4159
+
+
+ S4260
+
+
+ S4275
+
+
+ S4277
+
+
+ S5122
+
+
+ S6562
+
+
+ S6575
+
+
+
+
+
diff --git a/.sonarqube/conf/vbnet/SonarLint.xml b/.sonarqube/conf/vbnet/SonarLint.xml
new file mode 100644
index 0000000..71f4f79
--- /dev/null
+++ b/.sonarqube/conf/vbnet/SonarLint.xml
@@ -0,0 +1,546 @@
+
+
+
+
+ sonar.vbnet.ignoreHeaderComments
+ true
+
+
+ sonar.vbnet.file.suffixes
+ .vb
+
+
+ sonar.vbnet.roslyn.ignoreIssues
+ false
+
+
+ sonar.vbnet.analyzeGeneratedCode
+ false
+
+
+
+
+ S1066
+
+
+ S1110
+
+
+ S1123
+
+
+ S1125
+
+
+ S1133
+
+
+ S1134
+
+
+ S1135
+
+
+ S1155
+
+
+ S1172
+
+
+ S1186
+
+
+ S1479
+
+
+ maximum
+ 30
+
+
+
+
+ S1481
+
+
+ S1862
+
+
+ S1940
+
+
+ S1944
+
+
+ S2225
+
+
+ S2234
+
+
+ S2340
+
+
+ S2342
+
+
+ flagsAttributeFormat
+ ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?s$
+
+
+ format
+ ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
+
+
+
+
+ S2344
+
+
+ S2345
+
+
+ S2346
+
+
+ S2347
+
+
+ format
+ ^(([a-z][a-z0-9]*)?([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?_)?([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
+
+
+
+
+ S2349
+
+
+ S2352
+
+
+ S2355
+
+
+ S2358
+
+
+ S2359
+
+
+ S2365
+
+
+ S2368
+
+
+ S2692
+
+
+ S2925
+
+
+ S2951
+
+
+ S3358
+
+
+ S3363
+
+
+ S3431
+
+
+ S3449
+
+
+ S3453
+
+
+ S3598
+
+
+ S3776
+
+
+ threshold
+ 15
+
+
+ propertyThreshold
+ 3
+
+
+
+
+ S3923
+
+
+ S3926
+
+
+ S3927
+
+
+ S4201
+
+
+ S4210
+
+
+ S4423
+
+
+ S4428
+
+
+ S4507
+
+
+ S4545
+
+
+ S4663
+
+
+ S5042
+
+
+ S5542
+
+
+ S5547
+
+
+ S5659
+
+
+ S5753
+
+
+ S5856
+
+
+ S6145
+
+
+ S6146
+
+
+ S6608
+
+
+ S6609
+
+
+ S6930
+
+
+ S6931
+
+
+ S101
+
+
+ format
+ ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
+
+
+
+
+ S1048
+
+
+ S107
+
+
+ max
+ 7
+
+
+
+
+ S1075
+
+
+ S108
+
+
+ S112
+
+
+ S114
+
+
+ format
+ ^I([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
+
+
+
+
+ S1163
+
+
+ S117
+
+
+ format
+ ^[a-z][a-z0-9]*([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
+
+
+
+
+ S1192
+
+
+ threshold
+ 3
+
+
+
+
+ S1542
+
+
+ format
+ ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
+
+
+
+
+ S1643
+
+
+ S1645
+
+
+ S1654
+
+
+ format
+ ^[a-z][a-z0-9]*([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?$
+
+
+
+
+ S1656
+
+
+ S1751
+
+
+ S1764
+
+
+ S1871
+
+
+ S2068
+
+
+ credentialWords
+ password, passwd, pwd, passphrase
+
+
+
+
+ S2077
+
+
+ S2166
+
+
+ S2178
+
+
+ S2257
+
+
+ S2304
+
+
+ format
+ ^([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?(\.([A-Z]{1,3}[a-z0-9]+)*([A-Z]{2})?)*$
+
+
+
+
+ S2372
+
+
+ S2375
+
+
+ minimumSeriesLength
+ 6
+
+
+
+
+ S2376
+
+
+ S2612
+
+
+ S2737
+
+
+ S2757
+
+
+ S3011
+
+
+ S3385
+
+
+ S3464
+
+
+ S3466
+
+
+ S3603
+
+
+ S3871
+
+
+ S3878
+
+
+ S3903
+
+
+ S3904
+
+
+ S3998
+
+
+ S4136
+
+
+ S4581
+
+
+ S4583
+
+
+ S4586
+
+
+ S4790
+
+
+ S5443
+
+
+ S5445
+
+
+ S5693
+
+
+ fileUploadSizeLimit
+ 8388608
+
+
+
+
+ S6580
+
+
+ S6588
+
+
+ S6607
+
+
+ S6610
+
+
+ S6612
+
+
+ S6613
+
+
+ S6617
+
+
+ S907
+
+
+ S927
+
+
+ S1313
+
+
+ S2094
+
+
+ S2437
+
+
+ S2551
+
+
+ S2761
+
+
+ S3063
+
+
+ S3869
+
+
+ S3889
+
+
+ S3981
+
+
+ S4036
+
+
+ S4143
+
+
+ S4144
+
+
+ S4159
+
+
+ S4260
+
+
+ S4275
+
+
+ S4277
+
+
+ S4830
+
+
+ S5944
+
+
+ S6444
+
+
+ S6561
+
+
+ S6562
+
+
+ S6575
+
+
+
+
+
diff --git a/BlazorApp1/Components/Pages/LotteryTicketPages/Edit.razor b/BlazorApp1/Components/Pages/LotteryTicketPages/Edit.razor
index b0cfab8..4eae222 100644
--- a/BlazorApp1/Components/Pages/LotteryTicketPages/Edit.razor
+++ b/BlazorApp1/Components/Pages/LotteryTicketPages/Edit.razor
@@ -1,96 +1 @@
@page "/LotteryTickets/edit"
-@inject BlazorApp1.Data.BlazorApp1Context DB
-@using Services.Tickets.Models
-@inject NavigationManager NavigationManager
-@using Microsoft.EntityFrameworkCore
-
-Edit
-
-
Edit
-
-LotteryTicket
-
-@if (LotteryTicket is null)
-{
- Loading...
-}
-else
-{
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-}
-
-
-
-@code {
- [SupplyParameterFromQuery]
- public long? Id { get; set; }
-
- [SupplyParameterFromForm]
- public LotteryTicket? LotteryTicket { get; set; }
-
- protected override async Task OnInitializedAsync()
- {
- LotteryTicket ??= await DB.LotteryTicket.FirstOrDefaultAsync(m => m.Id == Id);
-
- if (LotteryTicket is null)
- {
- NavigationManager.NavigateTo("notfound");
- }
- }
-
- // To protect from overposting attacks, enable the specific properties you want to bind to.
- // For more details, see https://aka.ms/RazorPagesCRUD.
- public async Task UpdateLotteryTicket()
- {
- DB.Attach(LotteryTicket!).State = EntityState.Modified;
-
- try
- {
- await DB.SaveChangesAsync();
- }
- catch (DbUpdateConcurrencyException)
- {
- if (!LotteryTicketExists(LotteryTicket!.Id))
- {
- NavigationManager.NavigateTo("notfound");
- }
- else
- {
- throw;
- }
- }
-
- NavigationManager.NavigateTo("/lotterytickets");
- }
-
- bool LotteryTicketExists(long? id)
- {
- return DB.LotteryTicket.Any(e => e.Id == id);
- }
-}