diff --git a/BootstrapAdmin-Blazor.slnf b/BootstrapAdmin-Blazor.slnf new file mode 100644 index 00000000..4f220dd9 --- /dev/null +++ b/BootstrapAdmin-Blazor.slnf @@ -0,0 +1,11 @@ +{ + "solution": { + "path": "BootstrapAdmin.sln", + "projects": [ + "src\\blazor\\admin\\Bootstrap.Admin.Blazor.DataAccess\\Bootstrap.Admin.Blazor.DataAccess.csproj", + "src\\blazor\\admin\\Bootstrap.Admin.Blazor\\Bootstrap.Admin.Blazor.csproj", + "src\\mvc\\admin\\Bootstrap.Admin\\Bootstrap.Admin.csproj", + "src\\mvc\\admin\\Bootstrap.DataAccess\\Bootstrap.DataAccess.csproj" + ] + } +} \ No newline at end of file diff --git a/BootstrapAdmin.sln b/BootstrapAdmin.sln index 66a25a42..91e3ea6d 100644 --- a/BootstrapAdmin.sln +++ b/BootstrapAdmin.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.29215.179 +# Visual Studio Version 17 +VisualStudioVersion = 17.0.31903.59 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SQLServer", "SQLServer", "{87319AF5-7C40-4362-B67C-35F9DD737DB4}" ProjectSection(SolutionItems) = preProject @@ -10,15 +10,15 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SQLServer", "SQLServer", "{ db\SqlServer\Install.sql = db\SqlServer\Install.sql EndProjectSection EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Admin", "src\admin\Bootstrap.Admin\Bootstrap.Admin.csproj", "{7B2B7043-3CB2-4C5A-BDF2-8C47F1A5471A}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Admin", "src\mvc\admin\Bootstrap.Admin\Bootstrap.Admin.csproj", "{7B2B7043-3CB2-4C5A-BDF2-8C47F1A5471A}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "db", "db", "{586410F2-C1F0-47CD-AB28-2CF506DED2C8}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client", "src\client\Bootstrap.Client\Bootstrap.Client.csproj", "{C82A6E45-AB90-43D1-8429-5CBE953D8151}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client", "src\mvc\client\Bootstrap.Client\Bootstrap.Client.csproj", "{C82A6E45-AB90-43D1-8429-5CBE953D8151}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "client", "client", "{C7F51A14-2D89-4D1F-AD78-C42B79AB0BF0}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.DataAccess", "src\admin\Bootstrap.DataAccess\Bootstrap.DataAccess.csproj", "{8D62BE79-BE13-43C8-969B-C9B00B3C84B7}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.DataAccess", "src\mvc\admin\Bootstrap.DataAccess\Bootstrap.DataAccess.csproj", "{8D62BE79-BE13-43C8-969B-C9B00B3C84B7}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SQLite", "SQLite", "{523515EC-2AD7-4282-9AF4-9D20371183B0}" ProjectSection(SolutionItems) = preProject @@ -26,7 +26,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SQLite", "SQLite", "{523515 db\SQLite\Install.sql = db\SQLite\Install.sql EndProjectSection EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.DataAccess.MongoDB", "src\admin\Bootstrap.DataAccess.MongoDB\Bootstrap.DataAccess.MongoDB.csproj", "{8336F096-4B4A-4710-A1FA-0F5E44CD8D26}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.DataAccess.MongoDB", "src\mvc\admin\Bootstrap.DataAccess.MongoDB\Bootstrap.DataAccess.MongoDB.csproj", "{8336F096-4B4A-4710-A1FA-0F5E44CD8D26}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MongoDB", "MongoDB", "{A06A0AD8-A246-4329-B024-7174AE4A3EDE}" ProjectSection(SolutionItems) = preProject @@ -57,9 +57,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Postgresql", "Postgresql", db\Postgresql\install.sql = db\Postgresql\install.sql EndProjectSection EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client.DataAccess", "src\client\Bootstrap.Client.DataAccess\Bootstrap.Client.DataAccess.csproj", "{843811A2-FE49-410F-BF9F-9F1FB14A1DEE}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client.DataAccess", "src\mvc\client\Bootstrap.Client.DataAccess\Bootstrap.Client.DataAccess.csproj", "{843811A2-FE49-410F-BF9F-9F1FB14A1DEE}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client.DataAccess.MongoDB", "src\client\Bootstrap.Client.DataAccess.MongoDB\Bootstrap.Client.DataAccess.MongoDB.csproj", "{BC1C6D63-ADA9-4C3B-89F0-CEB191A86BF5}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client.DataAccess.MongoDB", "src\mvc\client\Bootstrap.Client.DataAccess.MongoDB\Bootstrap.Client.DataAccess.MongoDB.csproj", "{BC1C6D63-ADA9-4C3B-89F0-CEB191A86BF5}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{6AD32A76-F3AA-423E-96EA-E5CC679934D1}" EndProject @@ -74,9 +74,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{E057452E-0 EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docker", "docker", "{85574E7C-7D58-4135-AB4B-76678552D271}" - ProjectSection(SolutionItems) = preProject - src\admin\Bootstrap.Admin\Dockerfile = src\admin\Bootstrap.Admin\Dockerfile - EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "srcipts", "srcipts", "{72C103DB-E1D3-449F-97C2-DF12CA111FD4}" EndProject @@ -130,9 +127,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "git", "git", "{64EACBD1-23D EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "blazor", "blazor", "{DAE3826B-AAAB-468A-9A06-2F56EF5C0767}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client.Blazor", "src\blazor\Bootstrap.Client.Blazor\Bootstrap.Client.Blazor.csproj", "{90BC5C25-0F93-4CDE-833C-3D8243E19D3B}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client.Blazor", "src\blazor\client\Bootstrap.Client.Blazor\Bootstrap.Client.Blazor.csproj", "{90BC5C25-0F93-4CDE-833C-3D8243E19D3B}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client.Blazor.Shared", "src\blazor\Bootstrap.Client.Blazor.Shared\Bootstrap.Client.Blazor.Shared.csproj", "{B306BD58-1C73-40F2-86F7-E1763344007B}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Client.Blazor.Shared", "src\blazor\client\Bootstrap.Client.Blazor.Shared\Bootstrap.Client.Blazor.Shared.csproj", "{B306BD58-1C73-40F2-86F7-E1763344007B}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "github", "github", "{C07631B9-5E5E-417A-9A16-3C88956D574E}" ProjectSection(SolutionItems) = preProject @@ -140,6 +137,16 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "github", "github", "{C07631 .github\workflows\docker.yml = .github\workflows\docker.yml EndProjectSection EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Admin.Blazor", "src\blazor\admin\Bootstrap.Admin.Blazor\Bootstrap.Admin.Blazor.csproj", "{485C1B75-7E3C-4AFC-8A91-2347FFEC1E96}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "mvc", "mvc", "{C996F427-DA93-49D6-9804-4E665D195FC2}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "admin", "admin", "{45ADEF9B-C8BD-4224-9E12-F6716E85A22C}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "client", "client", "{55A2459A-6BDE-4493-B2C0-5BE1673E99EE}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bootstrap.Admin.Blazor.DataAccess", "src\blazor\admin\Bootstrap.Admin.Blazor.DataAccess\Bootstrap.Admin.Blazor.DataAccess.csproj", "{75730767-A53A-4CFB-BACB-B90401288FA6}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -182,6 +189,14 @@ Global {B306BD58-1C73-40F2-86F7-E1763344007B}.Debug|Any CPU.Build.0 = Debug|Any CPU {B306BD58-1C73-40F2-86F7-E1763344007B}.Release|Any CPU.ActiveCfg = Release|Any CPU {B306BD58-1C73-40F2-86F7-E1763344007B}.Release|Any CPU.Build.0 = Release|Any CPU + {485C1B75-7E3C-4AFC-8A91-2347FFEC1E96}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {485C1B75-7E3C-4AFC-8A91-2347FFEC1E96}.Debug|Any CPU.Build.0 = Debug|Any CPU + {485C1B75-7E3C-4AFC-8A91-2347FFEC1E96}.Release|Any CPU.ActiveCfg = Release|Any CPU + {485C1B75-7E3C-4AFC-8A91-2347FFEC1E96}.Release|Any CPU.Build.0 = Release|Any CPU + {75730767-A53A-4CFB-BACB-B90401288FA6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {75730767-A53A-4CFB-BACB-B90401288FA6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {75730767-A53A-4CFB-BACB-B90401288FA6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {75730767-A53A-4CFB-BACB-B90401288FA6}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -190,7 +205,7 @@ Global {87319AF5-7C40-4362-B67C-35F9DD737DB4} = {586410F2-C1F0-47CD-AB28-2CF506DED2C8} {7B2B7043-3CB2-4C5A-BDF2-8C47F1A5471A} = {E03B7391-B52F-4449-B400-5CD9DE01F085} {C82A6E45-AB90-43D1-8429-5CBE953D8151} = {C7F51A14-2D89-4D1F-AD78-C42B79AB0BF0} - {C7F51A14-2D89-4D1F-AD78-C42B79AB0BF0} = {41B6D37A-5E5E-42B3-85E4-D81A81E3D757} + {C7F51A14-2D89-4D1F-AD78-C42B79AB0BF0} = {C996F427-DA93-49D6-9804-4E665D195FC2} {8D62BE79-BE13-43C8-969B-C9B00B3C84B7} = {E03B7391-B52F-4449-B400-5CD9DE01F085} {523515EC-2AD7-4282-9AF4-9D20371183B0} = {586410F2-C1F0-47CD-AB28-2CF506DED2C8} {8336F096-4B4A-4710-A1FA-0F5E44CD8D26} = {E03B7391-B52F-4449-B400-5CD9DE01F085} @@ -200,7 +215,7 @@ Global {6F61C2AC-84D4-48A9-8A48-680657CC8175} = {586410F2-C1F0-47CD-AB28-2CF506DED2C8} {843811A2-FE49-410F-BF9F-9F1FB14A1DEE} = {C7F51A14-2D89-4D1F-AD78-C42B79AB0BF0} {BC1C6D63-ADA9-4C3B-89F0-CEB191A86BF5} = {C7F51A14-2D89-4D1F-AD78-C42B79AB0BF0} - {E03B7391-B52F-4449-B400-5CD9DE01F085} = {41B6D37A-5E5E-42B3-85E4-D81A81E3D757} + {E03B7391-B52F-4449-B400-5CD9DE01F085} = {C996F427-DA93-49D6-9804-4E665D195FC2} {C6F2DCA0-7941-4C28-9328-2D495F5DCB00} = {72C103DB-E1D3-449F-97C2-DF12CA111FD4} {FDCFC3E3-14CF-40B2-9FE5-5BC239AAC110} = {72C103DB-E1D3-449F-97C2-DF12CA111FD4} {5F732D4E-133B-4DA6-811B-C369CDC3FB89} = {72C103DB-E1D3-449F-97C2-DF12CA111FD4} @@ -208,8 +223,13 @@ Global {41E078CA-F005-4B66-B440-FD7EB731AD61} = {586410F2-C1F0-47CD-AB28-2CF506DED2C8} {64EACBD1-23DD-4168-BEED-55D47DB1A8BB} = {72C103DB-E1D3-449F-97C2-DF12CA111FD4} {DAE3826B-AAAB-468A-9A06-2F56EF5C0767} = {41B6D37A-5E5E-42B3-85E4-D81A81E3D757} - {90BC5C25-0F93-4CDE-833C-3D8243E19D3B} = {DAE3826B-AAAB-468A-9A06-2F56EF5C0767} - {B306BD58-1C73-40F2-86F7-E1763344007B} = {DAE3826B-AAAB-468A-9A06-2F56EF5C0767} + {90BC5C25-0F93-4CDE-833C-3D8243E19D3B} = {55A2459A-6BDE-4493-B2C0-5BE1673E99EE} + {B306BD58-1C73-40F2-86F7-E1763344007B} = {55A2459A-6BDE-4493-B2C0-5BE1673E99EE} + {485C1B75-7E3C-4AFC-8A91-2347FFEC1E96} = {45ADEF9B-C8BD-4224-9E12-F6716E85A22C} + {C996F427-DA93-49D6-9804-4E665D195FC2} = {41B6D37A-5E5E-42B3-85E4-D81A81E3D757} + {45ADEF9B-C8BD-4224-9E12-F6716E85A22C} = {DAE3826B-AAAB-468A-9A06-2F56EF5C0767} + {55A2459A-6BDE-4493-B2C0-5BE1673E99EE} = {DAE3826B-AAAB-468A-9A06-2F56EF5C0767} + {75730767-A53A-4CFB-BACB-B90401288FA6} = {45ADEF9B-C8BD-4224-9E12-F6716E85A22C} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {221EAE38-5F75-4391-9A48-E462A9F3B8FC} diff --git a/Directory.Build.props b/Directory.Build.props index 0f784c34..f1ef7cae 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -11,17 +11,17 @@ - - + + - - + + - - + + diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 5c90830b..c7627e53 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -2,6 +2,10 @@ + + net5.0 + + https://gitee.com/LongbowEnterprise/BootstrapAdmin https://gitee.com/LongbowEnterprise/BootstrapAdmin.git @@ -10,8 +14,4 @@ $(MSBuildProjectName).xml - - net5.0 - - diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor.DataAccess/Bootstrap.Admin.Blazor.DataAccess.csproj b/src/blazor/admin/Bootstrap.Admin.Blazor.DataAccess/Bootstrap.Admin.Blazor.DataAccess.csproj new file mode 100644 index 00000000..263821e9 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor.DataAccess/Bootstrap.Admin.Blazor.DataAccess.csproj @@ -0,0 +1,13 @@ + + + + net6.0 + enable + enable + + + + + + + diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor.DataAccess/Dict.cs b/src/blazor/admin/Bootstrap.Admin.Blazor.DataAccess/Dict.cs new file mode 100644 index 00000000..d58b6823 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor.DataAccess/Dict.cs @@ -0,0 +1,38 @@ +// Copyright (c) Argo Zhang (argo@163.com). All rights reserved. + +using PetaPoco; + +namespace Bootstrap.Admin.Blazor.DataAccess +{ + /// + /// 字典配置项 + /// + [TableName("Dicts")] + public class Dict + { + /// + /// 获得/设置 字典主键 数据库自增列 + /// + public string? Id { get; set; } + + /// + /// 获得/设置 字典分类 + /// + public string Category { get; set; } = ""; + + /// + /// 获得/设置 字典名称 + /// + public string Name { get; set; } = ""; + + /// + /// 获得/设置 字典字典值 + /// + public string Code { get; set; } = ""; + + /// + /// 获得/设置 字典定义值 0 表示系统使用,1 表示用户自定义 默认为 1 + /// + public int Define { get; set; } = 1; + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/App.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/App.razor new file mode 100644 index 00000000..b9431eaf --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/App.razor @@ -0,0 +1,11 @@ + + + + @Title + + + + + + + diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/App.razor.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/App.razor.cs new file mode 100644 index 00000000..97021777 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/App.razor.cs @@ -0,0 +1,27 @@ +namespace Bootstrap.Admin.Blazor +{ + /// + /// + /// + public partial class App + { + /// + /// + /// + public string? Title { get; set; } + + [Inject] + [NotNull] + private BootstrapAppContext? AppContext { get; set; } + + /// + /// + /// + protected override void OnInitialized() + { + base.OnInitialized(); + + //Title = DictHelper.RetrieveWebTitle(AppContext.AppId); + } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Bootstrap.Admin.Blazor.csproj b/src/blazor/admin/Bootstrap.Admin.Blazor/Bootstrap.Admin.Blazor.csproj new file mode 100644 index 00000000..f13b995c --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Bootstrap.Admin.Blazor.csproj @@ -0,0 +1,24 @@ + + + + net6.0 + enable + + + + + + + + + + + + + + + + + + + diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/BootstrapAdmin.db b/src/blazor/admin/Bootstrap.Admin.Blazor/BootstrapAdmin.db new file mode 100644 index 00000000..ab36649a Binary files /dev/null and b/src/blazor/admin/Bootstrap.Admin.Blazor/BootstrapAdmin.db differ diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Components/BlazorTable.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Components/BlazorTable.razor new file mode 100644 index 00000000..d5af07eb --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Components/BlazorTable.razor @@ -0,0 +1,18 @@ +@typeparam TItem + + + + @TableToolbarTemplate + + + @ColumnsTemplete(context) + + + @CustomerSearchTemplate(context) + +
diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Components/BlazorTable.razor.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Components/BlazorTable.razor.cs new file mode 100644 index 00000000..a537d031 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Components/BlazorTable.razor.cs @@ -0,0 +1,60 @@ +namespace Bootstrap.Admin.Blazor.Components +{ + /// + /// + /// + [CascadingTypeParameter(nameof(TItem))] + public partial class BlazorTable where TItem : class, new() + { + /// + /// + /// + [Parameter] + public IEnumerable? PageItemsSource { get; set; } + + /// + /// + /// + [NotNull] + [Parameter] + public RenderFragment? ColumnsTemplete { get; set; } + + /// + /// + /// + [NotNull] + [Parameter] + public RenderFragment? CustomerSearchTemplate { get; set; } + + /// + /// + /// + [NotNull] + [Parameter] + public RenderFragment? TableToolbarTemplate { get; set; } + + /// + /// + /// + [Parameter] + public bool IsPagination { get; set; } = true; + + /// + /// + /// + [Parameter] + public ITableSearchModel? TableSearchModel { get; set; } + + /// + /// + /// + [Parameter] + public IDataService? DataService { get; set; } + + /// + /// + /// + [Parameter] + public Func>>? OnQueryAsync { get; set; } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Components/DictSearch.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Components/DictSearch.razor new file mode 100644 index 00000000..4c5399d7 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Components/DictSearch.razor @@ -0,0 +1,27 @@ +
+
+ +
+
+ +
+
+ +
+
+ +@code { + private IEnumerable? Items { get; set; } = new List() + { + new SelectedItem("","全部"), + new SelectedItem("0","系统使用"), + new SelectedItem("1","自定义"), + }; + + [Parameter] + [NotNull] + public DictsSearchModel? Value { get; set; } + + [Parameter] + public EventCallback ValueChanged { get; set; } +} \ No newline at end of file diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Controllers/AccountController.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Controllers/AccountController.cs new file mode 100644 index 00000000..7e74dd13 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Controllers/AccountController.cs @@ -0,0 +1,238 @@ +using Microsoft.AspNetCore.Authentication; +using Microsoft.AspNetCore.Authentication.Cookies; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; +using Microsoft.AspNetCore.WebUtilities; +using System.Security.Claims; + +namespace Bootstrap.Admin.Controllers +{ + ///// + ///// Account controller. + ///// + //[AllowAnonymous] + //[AutoValidateAntiforgeryToken] + //public class AccountController : Controller + //{ + //private const string MobileSchema = "Mobile"; + ///// + ///// 系统锁屏界面 + ///// + ///// + //[HttpGet] + //public async Task Lock() + //{ + // if (!User.Identity!.IsAuthenticated) return Login(); + + // var authenticationType = User.Identity.AuthenticationType; + // await HttpContext.SignOutAsync(); + // var urlReferrer = Request.Headers["Referer"].FirstOrDefault(); + // if (urlReferrer?.Contains("/Pages", StringComparison.OrdinalIgnoreCase) ?? false) urlReferrer = "/Pages"; + // return View(new LockModel(User.Identity.Name) + // { + // AuthenticationType = authenticationType, + // ReturnUrl = WebUtility.UrlEncode(string.IsNullOrEmpty(urlReferrer) ? CookieAuthenticationDefaults.LoginPath.Value : urlReferrer) + // }); + //} + + ///// + ///// 系统锁屏界面 + ///// + ///// + ///// + ///// + ///// + ///// + //[HttpPost] + //[IgnoreAntiforgeryToken] + //public Task Lock([FromServices] ISMSProvider provider, string userName, string password, string authType) + //{ + // // 根据不同的登陆方式 + // Task ret; + // if (authType == MobileSchema) ret = Mobile(provider, userName, password); + // else ret = Login(userName, password, string.Empty); + // return ret; + //} + + ///// + ///// 系统登录方法 + ///// + ///// + ///// + ///// + //[HttpGet] + //public ActionResult Login([FromQuery] string? appId = null, [FromQuery] string view = "") + //{ + // if (DictHelper.RetrieveSystemModel()) + // { + // ViewBag.UserName = "Admin"; + // ViewBag.Password = "123789"; + // } + // return User.Identity!.IsAuthenticated ? (ActionResult)Redirect("~/Home/Index") : LoginView(view, new LoginModel(appId)); + //} + + //private ViewResult LoginView(string view, LoginModel model) + //{ + // if (string.IsNullOrEmpty(view)) + // { + // // retrieve login view from db + // view = DictHelper.RetrieveLoginView(); + // } + // return View(view, model); + //} + + ///// + ///// 短信验证登陆方法 + ///// + ///// + ///// + ///// + ///// + //[HttpPost()] + //public async Task Mobile([FromServices] ISMSProvider provider, string phone, string code) + //{ + // if (string.IsNullOrEmpty(phone) || string.IsNullOrEmpty(code)) return RedirectLogin(); + + // var auth = provider.Validate(phone, code); + // await HttpContext.Log(phone, auth); + // if (auth) + // { + // var user = UserHelper.Retrieves().FirstOrDefault(u => u.UserName == phone); + // if (user == null) + // { + // user = new User() + // { + // ApprovedBy = "Mobile", + // ApprovedTime = DateTime.Now, + // DisplayName = "手机用户", + // UserName = phone, + // Password = code, + // Icon = "default.jpg", + // Description = "手机用户", + // App = provider.Options.App + // }; + // if (UserHelper.Save(user) && !string.IsNullOrEmpty(user.Id)) + // { + // // 根据配置文件设置默认角色 + // var roles = RoleHelper.Retrieves().Where(r => provider.Options.Roles.Any(rl => rl.Equals(r.RoleName, StringComparison.OrdinalIgnoreCase))).Select(r => r.Id!); + // RoleHelper.SaveByUserId(user.Id, roles); + // } + // } + // } + // return auth ? await SignInAsync(phone, true, MobileSchema) : RedirectLogin(); + //} + + //private IActionResult RedirectLogin() + //{ + // var query = Request.Query.Aggregate(new Dictionary(), (d, v) => + // { + // d.Add(v.Key, v.Value.ToString()); + // return d; + // }); + // return Redirect(QueryHelpers.AddQueryString(Request.PathBase + CookieAuthenticationDefaults.LoginPath, query)); + //} + + ///// + ///// Login the specified userName, password and remember. + ///// + ///// The login. + ///// User name. + ///// Password. + ///// Remember. + //[HttpPost] + //public async Task Login(string userName, string password, string remember) + //{ + // if (string.IsNullOrEmpty(userName) || string.IsNullOrEmpty(password)) return RedirectLogin(); + + // var auth = UserHelper.Authenticate(userName, password); + // await HttpContext.Log(userName, auth); + // return auth ? await SignInAsync(userName, remember == "true") : LoginView("", new LoginModel() { AuthFailed = true }); + //} + + //private async Task SignInAsync(string userName, bool persistent, string authenticationScheme = CookieAuthenticationDefaults.AuthenticationScheme) + //{ + // var identity = new ClaimsIdentity(authenticationScheme); + // identity.AddClaim(new Claim(ClaimTypes.Name, userName)); + // await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, new ClaimsPrincipal(identity), new AuthenticationProperties { ExpiresUtc = DateTimeOffset.Now.AddDays(DictHelper.RetrieveCookieExpiresPeriod()), IsPersistent = persistent }); + + // // redirect origin url + // var originUrl = Request.Query[CookieAuthenticationDefaults.ReturnUrlParameter].FirstOrDefault() ?? "~/Home/Index"; + // return Redirect(originUrl); + //} + + ///// + ///// Logout this instance. + ///// + ///// + ///// The logout. + //[HttpGet] + //public async Task Logout([FromQuery] string appId) + //{ + // await HttpContext.SignOutAsync(); + // return Redirect(QueryHelpers.AddQueryString(Request.PathBase + CookieAuthenticationDefaults.LoginPath, "AppId", appId ?? BootstrapAppContext.AppId)); + //} + + ///// + ///// Accesses the denied. + ///// + ///// The denied. + //[ResponseCache(Duration = 600)] + //[HttpGet] + //public ActionResult AccessDenied() => View("Error", ErrorModel.CreateById(403)); + + ///// + ///// Gitee 认证 + ///// + ///// + //[HttpGet] + //public IActionResult Gitee([FromServices] IConfiguration config) + //{ + // var enabled = config.GetValue($"{nameof(GiteeOptions)}:Enabled", false); + // return Challenge(enabled ? GiteeDefaults.AuthenticationScheme : CookieAuthenticationDefaults.AuthenticationScheme); + //} + + ///// + ///// GitHub 认证 + ///// + ///// + //[HttpGet] + //public IActionResult GitHub([FromServices] IConfiguration config) + //{ + // var enabled = config.GetValue($"{nameof(GitHubOptions)}:Enabled", false); + // return Challenge(enabled ? GitHubDefaults.AuthenticationScheme : CookieAuthenticationDefaults.AuthenticationScheme); + //} + + ///// + ///// Tencent 认证 + ///// + ///// + //[HttpGet] + //public IActionResult Tencent([FromServices] IConfiguration config) + //{ + // var enabled = config.GetValue($"{nameof(TencentOptions)}:Enabled", false); + // return Challenge(enabled ? TencentDefaults.AuthenticationScheme : CookieAuthenticationDefaults.AuthenticationScheme); + //} + + ///// + ///// Alipay 认证 + ///// + ///// + //[HttpGet] + //public IActionResult Alipay([FromServices] IConfiguration config) + //{ + // var enabled = config.GetValue($"{nameof(AlipayOptions)}:Enabled", false); + // return Challenge(enabled ? AlipayDefaults.AuthenticationScheme : CookieAuthenticationDefaults.AuthenticationScheme); + //} + + ///// + ///// WeChat 认证 + ///// + ///// + //[HttpGet] + //public IActionResult WeChat([FromServices] IConfiguration config) + //{ + // var enabled = config.GetValue($"{nameof(WeChatOptions)}:Enabled", false); + // return Challenge(enabled ? WeChatDefaults.AuthenticationScheme : CookieAuthenticationDefaults.AuthenticationScheme); + //} + //} +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Extensions/DatabaseExtensions.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Extensions/DatabaseExtensions.cs new file mode 100644 index 00000000..2f0bb139 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Extensions/DatabaseExtensions.cs @@ -0,0 +1,127 @@ +// Copyright (c) Argo Zhang (argo@163.com). All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +// Website: https://www.blazor.zone or https://argozhang.github.io/ + +using PetaPoco; +using System.Linq.Expressions; +using System.Reflection; + +namespace BootstrapBlazor.DataAcces.PetaPoco +{ + /// + /// + /// + public static class DatabaseExtensions + { + /// + /// + /// + /// + /// + public static Task> FetchAsync(this IDatabase db, IEnumerable where, string? sortName = null, SortOrder sortOrder = SortOrder.Unset) + { + var exp = where.GetFilterLambda(); + var sql = new Sql(); + AnalysisExpression(exp, db, sql); + + if (!string.IsNullOrEmpty(sortName) && sortOrder != SortOrder.Unset) + { + sql.OrderBy(sortOrder == SortOrder.Asc ? sortName : $"{sortName} desc"); + } + return db.FetchAsync(sql); + } + + /// + /// + /// + /// + /// + public static Task> PageAsync(this IDatabase db, long pageIndex, long pageItems, IEnumerable where, string? sortName = null, SortOrder sortOrder = SortOrder.Unset) + { + var exp = where.GetFilterLambda(); + var sql = new Sql(); + AnalysisExpression(exp, db, sql); + + if (!string.IsNullOrEmpty(sortName) && sortOrder != SortOrder.Unset) + { + sql.OrderBy(sortOrder == SortOrder.Asc ? sortName : $"{sortName} desc"); + } + return db.PageAsync(pageIndex, pageItems, sql); + } + + private static void AnalysisExpression(Expression expression, IDatabase db, Sql sql) + { + switch (expression.NodeType) + { + case ExpressionType.Lambda: + if (expression is LambdaExpression exp) + { + AnalysisExpression(exp.Body, db, sql); + } + break; + case ExpressionType.AndAlso: + if (expression is BinaryExpression andExp) + { + AnalysisExpression(andExp.Left, db, sql); + AnalysisExpression(andExp.Right, db, sql); + } + break; + case ExpressionType.Call: + if (expression is MethodCallExpression callExp) + { + if (callExp.Method.Name == "Contains") + { + if (callExp.Object is MemberExpression callLeft) + { + var callColName = GetColumnName(callLeft.Member) ?? callLeft.Member.Name; + var p = (callExp.Arguments[0] as ConstantExpression)?.Value; + if (p != null) + { + sql.Where($"{db.Provider.EscapeSqlIdentifier(callColName)} like @0", $"%{p}%"); + } + } + } + } + break; + case ExpressionType.Equal: + case ExpressionType.NotEqual: + case ExpressionType.GreaterThan: + case ExpressionType.GreaterThanOrEqual: + case ExpressionType.LessThan: + case ExpressionType.LessThanOrEqual: + var binaryExp = (expression as BinaryExpression)!; + var left = (binaryExp.Left as MemberExpression)!; + + // 查找 PetaPoco.Column 标签 + var columnName = GetColumnName(left.Member) ?? left.Member.Name; + + // 查找操作符右侧 + var right = (binaryExp.Right as ConstantExpression)!; + var v = right.Value; + + if (v != null) + { + var operatorExp = GetOperatorExpression(expression); + sql.Where($"{db.Provider.EscapeSqlIdentifier(columnName)} {operatorExp} @0", v); + } + break; + + } + } + + private static string? GetColumnName(MemberInfo member) => member.CustomAttributes + .FirstOrDefault(i => i.AttributeType == typeof(ColumnAttribute))?.NamedArguments + .FirstOrDefault(i => i.MemberName == "Name").TypedValue.Value?.ToString(); + + private static string GetOperatorExpression(Expression expression) => expression.NodeType switch + { + ExpressionType.Equal => "=", + ExpressionType.NotEqual => "!=", + ExpressionType.GreaterThan => ">", + ExpressionType.GreaterThanOrEqual => ">=", + ExpressionType.LessThan => "<", + ExpressionType.LessThanOrEqual => "<=", + _ => "" + }; + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Extensions/ServicesExtensions.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Extensions/ServicesExtensions.cs new file mode 100644 index 00000000..522b354b --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Extensions/ServicesExtensions.cs @@ -0,0 +1,76 @@ +using BootstrapBlazor.DataAcces.PetaPoco; +using System.Text; + +namespace Microsoft.Extensions.DependencyInjection +{ + /// + /// + /// + public static class ServicesExtensions + { + /// + /// 添加示例后台任务 + /// + /// + public static IServiceCollection AddBootstrapBlazorAdminServices(this IServiceCollection services) + { + Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); + + // 增加后台任务服务 + //services.AddTaskServices(); + + //services.AddLogging(logging => logging.AddFileLogger().AddCloudLogger().AddDBLogger(ExceptionsHelper.Log)); + services.AddCors(); + services.AddResponseCompression(); + //services.AddCodePageProvider(); + + //services.AddCacheManager(); + //services.AddDbAdapter(); + //services.AddIPLocator(DictHelper.ConfigIPLocator); + //services.AddOnlineUsers(); + //services.AddSignalR().AddJsonProtocol(op => op.PayloadSerializerOptions.AddDefaultConverters()); + //services.AddBootstrapAdminAuthentication(Configuration) + // .AddGitee(OAuthHelper.Configure) + // .AddGitHub(OAuthHelper.Configure) + // .AddTencent(OAuthHelper.Configure) + // .AddAlipay(OAuthHelper.Configure); + //services.AddAuthorization(options => options.DefaultPolicy = new AuthorizationPolicyBuilder().RequireBootstrapAdminAuthorizate().Build()); + //services.AddButtonAuthorization(MenuHelper.AuthorizateButtons); + //services.AddBootstrapAdminBackgroundTask(); + //services.AddHttpClient(); + //services.AddAdminHealthChecks(); + //services.AddSMSProvider(); + + //services.AddSwagger(); + //services.AddApiVersioning(option => + //{ + // option.DefaultApiVersion = new ApiVersion(1, 0); + // option.ReportApiVersions = true; + // option.AssumeDefaultVersionWhenUnspecified = true; + // option.ApiVersionReader = ApiVersionReader.Combine(new HeaderApiVersionReader("api-version"), new QueryStringApiVersionReader("api-version")); + //}); + //services.AddExceptionless(); + //services.AddControllersWithViews(options => + //{ + // options.Filters.Add(); + // options.Filters.Add(); + // options.Filters.Add>(); + //}).AddJsonOptions(op => op.JsonSerializerOptions.AddDefaultConverters()); + //services.AddControllersWithViews().AddJsonOptions(op => op.JsonSerializerOptions.AddDefaultConverters()); + + // 增加 BootstrapBlazor 组件 + services.AddBootstrapBlazor(); + + // 增加数据服务 + services.AddSingleton(typeof(IDataService<>), typeof(DefaultDataService<>)); + + // 增加 BootstrapApp 上下文服务 + services.AddSingleton(); + + // 增加数据服务 + services.AddSingleton(); + + return services; + } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Models/DictsSearchModel.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Models/DictsSearchModel.cs new file mode 100644 index 00000000..a9158a5b --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Models/DictsSearchModel.cs @@ -0,0 +1,62 @@ +using Bootstrap.Admin.Blazor.DataAccess; + +namespace Bootstrap.Admin.Blazor.Models +{ + /// + /// + /// + public class DictsSearchModel : ITableSearchModel + { + /// + /// + /// + public string? Category { get; set; } + + /// + /// + /// + public int? Define { get; set; } + + /// + /// + /// + public string? Name { get; set; } + + /// + /// + /// + /// + public IEnumerable GetSearchs() + { + var ret = new List(); + + if (!string.IsNullOrEmpty(Name)) + { + ret.Add(new SearchFilterAction(nameof(Dict.Name), Name)); + } + + if (!string.IsNullOrEmpty(Category)) + { + ret.Add(new SearchFilterAction(nameof(Dict.Category), Category)); + } + + if (Define.HasValue) + { + ret.Add(new SearchFilterAction(nameof(Dict.Define), Define, FilterAction.Equal)); + } + + return ret; + } + + /// + /// + /// + /// + public void Reset() + { + Category = null; + Name = null; + Define = null; + } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Models/LoginModel.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Models/LoginModel.cs new file mode 100644 index 00000000..d9b7793a --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Models/LoginModel.cs @@ -0,0 +1,27 @@ +namespace Bootstrap.Admin.Blazor.Models +{ + /// + /// 登陆页面 Model + /// + public class LoginModel + { + ///// + ///// 默认构造函数 + ///// + ///// + //public LoginModel(string? appId = null) + //{ + // //ImageLibUrl = DictHelper.RetrieveImagesLibUrl(); + //} + + /// + /// 验证码图床地址 + /// + public string? ImageLibUrl { get; protected set; } + + /// + /// 是否登录认证失败 为真时客户端弹出滑块验证码 + /// + public bool AuthFailed { get; set; } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Dicts.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Dicts.razor new file mode 100644 index 00000000..8f69e5a4 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Dicts.razor @@ -0,0 +1,22 @@ +@page "/admin/dicts" + + + + + + + + +
+ +
+
+
+
+ + @if (context is DictsSearchModel searchModel) + { + + } + +
diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Dicts.razor.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Dicts.razor.cs new file mode 100644 index 00000000..5f78f41f --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Dicts.razor.cs @@ -0,0 +1,30 @@ +namespace Bootstrap.Admin.Blazor.Pages.Admin +{ + /// + /// + /// + public partial class Dicts + { + private IEnumerable? EditDefines { get; set; } + + private IEnumerable? LookUp { get; set; } + + private ITableSearchModel? DictsSearchModel { get; set; } = new DictsSearchModel(); + + /// + /// + /// + protected override void OnInitialized() + { + base.OnInitialized(); + + EditDefines = new List() + { + new SelectedItem("0","系统使用"), + new SelectedItem("1","自定义"), + }; + + LookUp = EditDefines; + } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Index.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Index.razor new file mode 100644 index 00000000..6e4f365c --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Index.razor @@ -0,0 +1,6 @@ +@page "/" +@page "/admin" +@page "/admin/index" +@attribute [TabItemOption(Text = "后台管理")] + +

欢迎使用后台管理

diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Users.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Users.razor new file mode 100644 index 00000000..1153b4bc --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Users.razor @@ -0,0 +1,17 @@ +@page "/admin/users" + +@* + + + + + + + + + + + + + +*@ \ No newline at end of file diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Users.razor.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Users.razor.cs new file mode 100644 index 00000000..c15f1490 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/Users.razor.cs @@ -0,0 +1,60 @@ +using Task = System.Threading.Tasks.Task; + +namespace Bootstrap.Admin.Blazor.Pages.Admin +{ + /// + /// + /// + public partial class Users + { + //[Inject] + //[NotNull] + //private DialogService? DialogService { get; set; } + + //[Inject] + //[NotNull] + //private ToastService? ToastService { get; set; } + + //private async Task OnAssignmentDept(IEnumerable users) + //{ + // if (users.Count() == 1) + // { + // var option = new DialogOption() + // { + // Title = "部门授权", + // BodyTemplate = BootstrapDynamicComponent.CreateComponent>(new Dictionary + // { + // [nameof(CheckboxList.Items)] = GroupHelper.Retrieves().Select(s => new SelectedItem(s.GroupCode, s.GroupName)) + // }).Render() + // }; + + // await DialogService.Show(option); + // } + // else + // { + // await ToastService.Warning("部门授权", "请选择一个用户"); + // } + //} + + //private async Task OnAssignmentRoles(IEnumerable users) + //{ + // if (users.Count() != 0) + // { + // var option = new DialogOption() + // { + // Title = "分配角色", + // BodyTemplate = BootstrapDynamicComponent.CreateComponent>(new Dictionary + // { + // [nameof(CheckboxList.Items)] = RoleHelper.Retrieves().Select(s => new SelectedItem(s.Id!, s.RoleName) { Active = s.Checked == "" ? false : true }) + // }).Render() + // }; + + // await DialogService.Show(option); + // } + // else + // { + // await ToastService.Warning("分配角色", "请选择一个用户"); + // } + //} + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/_Imports.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/_Imports.razor new file mode 100644 index 00000000..6de5d191 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Admin/_Imports.razor @@ -0,0 +1 @@ +@attribute [Authorize] diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Home/Index.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Home/Index.razor new file mode 100644 index 00000000..c600a12a --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/Home/Index.razor @@ -0,0 +1,3 @@ +@page "/home" +@page "/home/index" +@attribute [TabItemOption(Text = "首页")] diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/_Host.cshtml b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/_Host.cshtml new file mode 100644 index 00000000..7a162f41 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/_Host.cshtml @@ -0,0 +1,8 @@ +@page "/" +@namespace Bootstrap.Admin.Blazor.Pages +@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers +@{ + Layout = "_Layout"; +} + + diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/_Layout.cshtml b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/_Layout.cshtml new file mode 100644 index 00000000..3a8b8475 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Pages/_Layout.cshtml @@ -0,0 +1,42 @@ +@using Microsoft.AspNetCore.Components.Web +@namespace Bootstrap.Admin.Blazor.Pages +@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers + + + + + + + + + + + + + + + + + + + + + + + @RenderBody() + +
+ + An error has occurred. This application may no longer respond until reloaded. + + + An unhandled exception has occurred. See browser dev tools for details. + + Reload + 🗙 +
+ + + + + diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Program.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Program.cs new file mode 100644 index 00000000..814cc97b --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Program.cs @@ -0,0 +1,30 @@ +var builder = WebApplication.CreateBuilder(args); + +// Add services to the container. +builder.Services.AddRazorPages(); +builder.Services.AddServerSideBlazor(); + +// 注入项目服务 +builder.Services.AddBootstrapBlazorAdminServices(); + +var app = builder.Build(); + +// Configure the HTTP request pipeline. +if (!app.Environment.IsDevelopment()) +{ + app.UseExceptionHandler("/Error"); +} + +app.UseStaticFiles(); + +app.UseRouting(); + +// 开启缓存中间件 +//app.UseCacheManager(); + +// 开启 webapi +app.MapDefaultControllerRoute(); +app.MapBlazorHub(); +app.MapFallbackToPage("/_Host"); + +app.Run(); diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Properties/launchSettings.json b/src/blazor/admin/Bootstrap.Admin.Blazor/Properties/launchSettings.json new file mode 100644 index 00000000..f3ceb803 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Properties/launchSettings.json @@ -0,0 +1,28 @@ +{ + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:24748", + "sslPort": 0 + } + }, + "profiles": { + "Bootstrap.Admin.Blazor": { + "commandName": "Project", + "dotnetRunMessages": true, + "launchBrowser": true, + "applicationUrl": "http://localhost:5110", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Services/BootstrapAppContext.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Services/BootstrapAppContext.cs new file mode 100644 index 00000000..44dcfbe8 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Services/BootstrapAppContext.cs @@ -0,0 +1,22 @@ +namespace Bootstrap.Admin.Blazor.Services +{ + /// + /// + /// + public class BootstrapAppContext + { + /// + /// + /// + public string AppId { get; } + + /// + /// + /// + /// + public BootstrapAppContext(IConfiguration configuration) + { + AppId = configuration.GetValue("AppId", "demo"); + } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Services/BootstrapMenuService.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Services/BootstrapMenuService.cs new file mode 100644 index 00000000..a0b36b8d --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Services/BootstrapMenuService.cs @@ -0,0 +1,9 @@ +namespace Bootstrap.Admin.Blazor.Services +{ + /// + /// + /// + public class BootstrapMenuService : IBootstrapMenuService + { + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Services/DefaultDataService.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Services/DefaultDataService.cs new file mode 100644 index 00000000..f5eb551a --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Services/DefaultDataService.cs @@ -0,0 +1,91 @@ +// Copyright (c) Argo Zhang (argo@163.com). All rights reserved. +// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +// Website: https://www.blazor.zone or https://argozhang.github.io/ + +using PetaPoco; +using PetaPoco.Extensions; +using PetaPoco.Providers; + +namespace BootstrapBlazor.DataAcces.PetaPoco +{ + /// + /// PetaPoco ORM 的 IDataService 接口实现 + /// + internal class DefaultDataService : DataServiceBase where TModel : class, new() + { + private readonly IDatabase _db; + + /// + /// 构造函数 + /// + public DefaultDataService(IConfiguration configuration) + { + //TODO: 后期改造成自定适配 + var connString = configuration.GetConnectionString("bb"); + _db = new Database(connString); + } + + /// + /// 删除方法 + /// + /// + /// + public override Task DeleteAsync(IEnumerable models) + { + // 通过模型获取主键列数据 + // 支持批量删除 + _db.DeleteBatch(models); + return Task.FromResult(true); + } + + /// + /// 保存方法 + /// + /// + /// + /// + public override async Task SaveAsync(TModel model, ItemChangedType changedType) + { + if (changedType == ItemChangedType.Add) + { + await _db.InsertAsync(model); + } + else + { + await _db.UpdateAsync(model); + } + return true; + } + + /// + /// 查询方法 + /// + /// + /// + public override async Task> QueryAsync(QueryPageOptions option) + { + var ret = new QueryData() + { + IsSorted = true, + IsFiltered = true, + IsSearch = true + }; + + var filters = option.Filters.Concat(option.Searchs).Concat(option.CustomerSearchs); + if (option.IsPage) + { + var items = await _db.PageAsync(option.PageIndex, option.PageItems, filters, option.SortName, option.SortOrder); + + ret.TotalCount = Convert.ToInt32(items.TotalItems); + ret.Items = items.Items; + } + else + { + var items = await _db.FetchAsync(filters, option.SortName, option.SortOrder); + ret.TotalCount = items.Count; + ret.Items = items; + } + return ret; + } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Services/IBootstrapMenuService.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Services/IBootstrapMenuService.cs new file mode 100644 index 00000000..a63ff8df --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Services/IBootstrapMenuService.cs @@ -0,0 +1,9 @@ +namespace Bootstrap.Admin.Blazor.Services +{ + /// + /// + /// + public interface IBootstrapMenuService + { + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/MainLayout.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/MainLayout.razor new file mode 100644 index 00000000..dae2155e --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/MainLayout.razor @@ -0,0 +1,33 @@ +@inherits LayoutComponentBase + + +
+ Bootstrap of Blazor + + 超级管理员 +
+
+ +
+ +
+ 后台管理 +
+
+
+ +
+ 管理员 +
+
+
+
+
+ @Body +
+
+
Bootstrap Admin Blazor 版 ©
+
+
diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/MainLayout.razor.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/MainLayout.razor.cs new file mode 100644 index 00000000..73478338 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/MainLayout.razor.cs @@ -0,0 +1,32 @@ +namespace Bootstrap.Admin.Blazor.Shared +{ + /// + /// MainLayout 布局类 + /// + public partial class MainLayout + { + private IEnumerable? MenuItems { get; set; } + + /// + /// + /// + protected override void OnInitialized() + { + base.OnInitialized(); + + // TODO: 暂时写死 Admin 账号 + //MenuItems = DataAccess.MenuHelper.RetrieveSystemMenus("Admin").Select(s => new MenuItem() + //{ + // Url = s.Url.Replace("~", ""), + // Text = s.Name, + // Icon = s.Icon, + // Items = s.Menus.Select(x => new MenuItem + // { + // Url = x.Url.Replace("~", ""), + // Text = x.Name, + // Icon = x.Icon + // }) + //}); + } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor new file mode 100644 index 00000000..8c5a8796 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor @@ -0,0 +1,9 @@ +@inherits LayoutComponentBase + +
+
+ 404 +
+

请求资源未找到

+

资源不存在或者没有访问权限,点击这里 返回首页 或者 系统自检

+
diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor.cs b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor.cs new file mode 100644 index 00000000..82c5dfff --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor.cs @@ -0,0 +1,12 @@ +namespace Bootstrap.Admin.Blazor.Shared +{ + /// + /// NotFoundLayout 模板类 + /// + public partial class NotFoundLayout + { + private string Image { get; set; } = "images/404.png"; + + private bool IsNotAuthorizated { get; set; } + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor.css b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor.css new file mode 100644 index 00000000..258da531 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/Shared/NotFoundLayout.razor.css @@ -0,0 +1,25 @@ +.error { + position: absolute; + bottom: 0; + top: 0; + right: 0; + left: 0; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + background: #f7f7f7; +} + +h3 { + font-size: 1.28rem; + font-weight: bold; + margin: 1.125rem 0; +} + +.bg { + background-image: url('../images/bg404.png'); + width: 458px; + height: 215px; + text-align: center; +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/_Imports.razor b/src/blazor/admin/Bootstrap.Admin.Blazor/_Imports.razor new file mode 100644 index 00000000..67c625c7 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/_Imports.razor @@ -0,0 +1,17 @@ +@using System.Net.Http +@using Microsoft.AspNetCore.Authorization +@using Microsoft.AspNetCore.Components.Authorization +@using Microsoft.AspNetCore.Components.Forms +@using Microsoft.AspNetCore.Components.Routing +@using Microsoft.AspNetCore.Components.Web +@using Microsoft.AspNetCore.Components.Web.Virtualization +@using Microsoft.JSInterop + +@using BootstrapBlazor.Components + +@using Bootstrap.Admin.Blazor +@using Bootstrap.Admin.Blazor.Components +@using Bootstrap.Admin.Blazor.Models +@using Bootstrap.Admin.Blazor.Shared + +@using Bootstrap.Admin.Blazor.DataAccess \ No newline at end of file diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/appsettings.Development.json b/src/blazor/admin/Bootstrap.Admin.Blazor/appsettings.Development.json new file mode 100644 index 00000000..02a4aec5 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/appsettings.Development.json @@ -0,0 +1,331 @@ +{ + "DetailedErrors": true, + "AutoGenerateDatabase": true, + "DB": [ + { + "Enabled": false, + "ProviderName": "SqlServer", + "SqlFolder": "..\\..\\..\\db\\SqlServer", + "ConnectionStrings": { + "ba": "Data Source=.;Initial Catalog=BootstrapAdmin;User ID=sa;Password=sa" + } + }, + { + "Enabled": true, + "ProviderName": "Sqlite", + "SqlFolder": "..\\..\\..\\db\\SQLite", + "ConnectionStrings": { + "ba": "Data Source=BootstrapAdmin.db;" + } + }, + { + "Enabled": false, + "ProviderName": "MySql", + "SqlFolder": "..\\..\\..\\db\\MySQL", + "ConnectionStrings": { + "ba": "Server=localhost;Database=BA;Uid=argozhang;Pwd=argo@163.com;SslMode=none;" + } + }, + { + "Enabled": false, + "ProviderName": "Oracle", + "ConnectionStrings": { + "ba": "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=XXXXXX)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)));User Id=XX;Password=XX" + } + }, + { + "Enabled": false, + "ProviderName": "Npgsql", + "ConnectionStrings": { + "ba": "Server=localhost;Database=BootstrapAdmin;User ID=argozhang;Password=argo@163.com;" + } + }, + { + "Enabled": false, + "Widget": "Bootstrap.DataAccess.MongoDB", + "ProviderName": "MongoDB", + "SqlFolder": "..\\..\\..\\db\\MongoDB", + "ConnectionStrings": { + "ba": "mongodb://localhost:27017/BootstrapAdmin" + } + } + ], + "SwaggerPathBase": "", + "GiteeHealthChecks": "true", + "AllowOrigins": "http://localhost:49185", + "HealthsCloudUrl": "https://client.blazor.zone/api/Interface/Healths", + "FileStorageOptions": { + "Enabled": true, + "Folder": "TaskStorage", + "Secure": false + }, + "GiteeOptions": { + "Enabled": true, + "ClientId": "9bfe9b95d813ca7d613b110a54eda28bf227154b314c95f0c69e7680d64525e1", + "ClientSecret": "3427f2d901ba9afc76c1842a7303b2d67f8e098e71acc15051f89fe6f3d265db", + "CallbackPath": "/signin-gitee", + "HomePath": "/Admin/Profiles", + "Scope": [ "user_info", "projects" ], + "Roles": [ "Administrators" ], + "App": "Demo", + "StarredUrl": "https://gitee.com/api/v5/user/starred/LongbowEnterprise/BootstrapAdmin" + }, + "GitHubOptions": { + "Enabled": true, + "ClientId": "ec53ecfe238558a0423b", + "ClientSecret": "ffa759ca599df941b869efecb5e750bc1b27334e", + "CallbackPath": "/signin-github", + "HomePath": "/Admin/Profiles", + "Scope": [ "user_info", "repo" ], + "Roles": [ "Administrators" ], + "App": "Demo", + "StarredUrl": "https://api.github.com/user/starred/ArgoZhang/BootstrapAdmin" + }, + "WeChatOptions": { + "Enabled": true, + "ClientId": "", + "ClientSecret": "", + "CallbackPath": "/signin-weixin", + "HomePath": "/Admin/Profiles", + "Scope": [ "snsapi_login" ], + "Roles": [ "Administrators" ], + "App": "Demo" + }, + "TencentOptions": { + "Enabled": true, + "ClientId": "", + "ClientSecret": "", + "CallbackPath": "/signin-tencent", + "HomePath": "/Admin/Profiles", + "Scope": [ "get_user_info" ], + "Roles": [ "Administrators" ], + "App": "Demo" + }, + "SMSOptions": { + "CompanyCode": "", + "MD5Key": "MD5Key", + "Roles": [ "Administrators" ], + "HomePath": "/Admin/Profiles", + "App": "Demo" + }, + "AlipayOptions": { + "Enabled": true, + "ClientId": "", + "ClientSecret": "", + "CallbackPath": "/signin-alipay", + "HomePath": "/Admin/Profiles", + "SignKey": "", + "Scope": [ "auth_user" ], + "Roles": [ "Administrators" ], + "App": "Demo" + }, + "TencentSMSOptions": { + "AppId": "", + "AppKey": "", + "TplId": 0, + "Sign": "", + "Roles": [ "Default" ], + "HomePath": "/Admin/Profiles", + "App": "Demo", + "Debug": true + }, + "AppMenus": [ + "首页", + "测试页面", + "关于", + "返回码云", + "多级菜单", + "第二层", + "第三层", + "第四层" + ], + "LongbowCache": { + "Enabled": true, + "CorsItems": [ + { + "Enabled": true, + "Key": "ba", + "Url": "CacheList.axd", + "Desc": "后台管理数据缓存接口", + "Self": true + }, + { + "Enabled": true, + "Key": "App", + "Url": "http://localhost:49185/CacheList.axd", + "Desc": "测试系统", + "Self": false + } + ], + "CacheItems": [ + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByUserName", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "指定用户角色数据缓存" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByUrl", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过菜单获得角色数据" + }, + { + "Enabled": true, + "Key": "AppHelper-RetrieveAppsByUserName", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "指定用户授权应用数据缓存" + }, + { + "Enabled": true, + "Key": "BootstrapUser-RetrieveUsersByName", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "登录用户数据" + }, + { + "Enabled": true, + "Key": "BootstrapDict-RetrieveDicts", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有字典数据缓存" + }, + { + "Enabled": true, + "Key": "BootstrapMenu-RetrieveMenus", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "用户所有菜单数据缓存" + }, + { + "Enabled": true, + "Key": "GroupHelper-RetrieveGroupsByUserName", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "指定用户组数据缓存" + }, + { + "Enabled": true, + "Key": "UserHelper-RetrieveUsers", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有用户数据" + }, + { + "Enabled": true, + "Key": "UserHelper-RetrieveUsersByRoleId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过角色ID获得所有用户数据" + }, + { + "Enabled": true, + "Key": "UserHelper-RetrieveUsersByGroupId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过部门ID获得所有用户数据" + }, + { + "Enabled": true, + "Key": "UserHelper-RetrieveNewUsers", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "新用户数据" + }, + { + "Enabled": true, + "Key": "MenuHelper-RetrieveMenusByRoleId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过角色ID获得所有菜单数据" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRoles", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有角色数据" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByUserId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过用户ID获得所有角色数据" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByMenuId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过菜单ID获得所有角色数据" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByGroupId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过部门ID获得所有角色数据" + }, + { + "Enabled": true, + "Key": "GroupHelper-RetrieveGroups", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有部门数据" + }, + { + "Enabled": true, + "Key": "GroupHelper-RetrieveGroupsByUserId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过用户ID获得所有部门数据" + }, + { + "Enabled": true, + "Key": "GroupHelper-RetrieveGroupsByRoleId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过角色ID获得所有部门数据" + }, + { + "Enabled": true, + "Key": "AppHelper-RetrieveAppsByRoleId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过角色ID获得所有应用程序数据" + }, + { + "Enabled": true, + "Key": "DictHelper-RetrieveDictsCategory", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "字典分类数据" + }, + { + "Enabled": true, + "Key": "ExceptionHelper-RetrieveExceptions", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "程序异常数据" + }, + { + "Enabled": true, + "Key": "MessageHelper-RetrieveMessages", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "站内消息数据" + }, + { + "Enabled": true, + "Key": "TaskHelper-RetrieveTasks", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有任务数据" + } + ] + } +} \ No newline at end of file diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/appsettings.json b/src/blazor/admin/Bootstrap.Admin.Blazor/appsettings.json new file mode 100644 index 00000000..c67bc152 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/appsettings.json @@ -0,0 +1,350 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft": "Warning", + "Microsoft.Hosting.Lifetime": "Information" + }, + "LgbFile": { + "IncludeScopes": true, + "LogLevel": { + "Default": "Error" + }, + "FileName": "Error\\Log.log" + }, + "Cloud": { + "LogLevel": { + "Default": "Error" + }, + "Url": "https://client.blazor.zone/api/Interface/Log" + } + }, + "ConnectionStrings": { + "ba": "Data Source=.;Initial Catalog=BootstrapAdmin;User ID=sa;Password=sa", + "bb": "Data Source=BootstrapAdmin.db;" + }, + "AutoGenerateDatabase": false, + "DB": [ + { + "Enabled": false, + "ProviderName": "SqlServer", + "ConnectionStrings": { + "ba": "Data Source=.;Initial Catalog=BootstrapAdmin;User ID=sa;Password=sa" + } + }, + { + "Enabled": true, + "ProviderName": "Sqlite", + "ConnectionStrings": { + "ba": "Data Source=BootstrapAdmin.db;" + } + }, + { + "Enabled": false, + "ProviderName": "MySql", + "ConnectionStrings": { + "ba": "Server=localhost;Database=BA;Uid=argozhang;Pwd=argo@163.com;SslMode=none;" + } + }, + { + "Enabled": false, + "ProviderName": "Npgsql", + "ConnectionStrings": { + "ba": "Server=localhost;Database=BootstrapAdmin;User ID=argozhang;Password=argo@163.com;" + } + }, + { + "Enabled": false, + "Widget": "Bootstrap.DataAccess.MongoDB", + "ProviderName": "MongoDB", + "ConnectionStrings": { + "ba": "mongodb://localhost:27017/BootstrapAdmin" + } + } + ], + "AppId": "BA", + "UseHttps": true, + "SwaggerPathBase": "", + "AllowOrigins": "http://localhost,http://admin.blazor.zone", + "HealthsCloudUrl": "https://client.blazor.zone/api/Interface/Healths", + "GiteeHealthChecks": false, + "Sentry": { + "Dsn": "https://70bdfff562e84fa7b9a43d65924ab9ad@sentry.io/1469396" + }, + "BootstrapBlazorOptions": { + "DefaultCultureInfo": "zh-CN" + }, + "Exceptionless": { + "ApiKey": "AgQlY1MRWpX5qOF2edpK2IZYBhgPYImhr4UnZdAT" + }, + "TokenValidateOption": { + "Issuer": "BA", + "Audience": "api", + "Expires": 5, + "SecurityKey": "BootstrapAdmin-V1.1" + }, + "TaskServicesOptions": { + "ShutdownTimeout": "00:00:05" + }, + "FileStorageOptions": { + "Enabled": true, + "Folder": "TaskStorage", + "Secure": true + }, + "GiteeOptions": { + "Enabled": true, + "ClientId": "", + "ClientSecret": "", + "CallbackPath": "/signin-gitee", + "HomePath": "/Home/Index", + "Scope": [ "user_info", "projects" ], + "Roles": [ "Default" ], + "App": "Demo" + }, + "GitHubOptions": { + "Enabled": true, + "ClientId": "", + "ClientSecret": "", + "CallbackPath": "/signin-github", + "HomePath": "/Home/Index", + "Scope": [ "user_info", "repo" ], + "Roles": [ "Default" ], + "App": "Demo" + }, + "WeChatOptions": { + "Enabled": true, + "ClientId": "", + "ClientSecret": "", + "CallbackPath": "/signin-weixin", + "HomePath": "/Admin/Profiles", + "Scope": [ "snsapi_login" ], + "Roles": [ "Default" ], + "App": "Demo" + }, + "TencentOptions": { + "Enabled": true, + "ClientId": "", + "ClientSecret": "", + "CallbackPath": "/signin-tencent", + "HomePath": "/Admin/Profiles", + "Scope": [ "get_user_info" ], + "Roles": [ "Administrators" ], + "App": "Demo" + }, + "AlipayOptions": { + "Enabled": true, + "ClientId": "", + "ClientSecret": "", + "CallbackPath": "/signin-alipay", + "HomePath": "/Admin/Profiles", + "SignKey": "", + "Scope": [ "auth_user" ], + "Roles": [ "Administrators" ], + "App": "Demo" + }, + "SMSOptions": { + "CompanyCode": "", + "MD5Key": "MD5Key", + "Roles": [ "Default" ], + "HomePath": "/Home/Index", + "App": "Demo" + }, + "TencentSMSOptions": { + "AppId": "", + "AppKey": "", + "TplId": 0, + "Sign": "", + "Roles": [ "Default" ], + "HomePath": "/Admin/Profiles", + "App": "Demo" + }, + "LongbowCache": { + "Enabled": true, + "CorsItems": [ + { + "Enabled": true, + "Key": "ba", + "Url": "CacheList.axd", + "Desc": "后台管理数据缓存接口", + "Self": true + }, + { + "Enabled": true, + "Key": "App", + "Url": "../Client/CacheList.axd", + "Desc": "测试系统", + "Self": false + } + ], + "CacheItems": [ + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByUserName", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "指定用户角色数据缓存" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByUrl", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过菜单获得角色数据" + }, + { + "Enabled": true, + "Key": "AppHelper-RetrieveAppsByUserName", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "指定用户授权应用数据缓存" + }, + { + "Enabled": true, + "Key": "BootstrapUser-RetrieveUsersByName", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "登录用户数据" + }, + { + "Enabled": true, + "Key": "BootstrapDict-RetrieveDicts", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有字典数据缓存" + }, + { + "Enabled": true, + "Key": "BootstrapMenu-RetrieveMenus", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "用户所有菜单数据缓存" + }, + { + "Enabled": true, + "Key": "GroupHelper-RetrieveGroupsByUserName", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "指定用户组数据缓存" + }, + { + "Enabled": true, + "Key": "UserHelper-RetrieveUsers", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有用户数据" + }, + { + "Enabled": true, + "Key": "UserHelper-RetrieveUsersByRoleId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过角色ID获得所有用户数据" + }, + { + "Enabled": true, + "Key": "UserHelper-RetrieveUsersByGroupId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过部门ID获得所有用户数据" + }, + { + "Enabled": true, + "Key": "UserHelper-RetrieveNewUsers", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "新用户数据" + }, + { + "Enabled": true, + "Key": "MenuHelper-RetrieveMenusByRoleId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过角色ID获得所有菜单数据" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRoles", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有角色数据" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByUserId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过用户ID获得所有角色数据" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByMenuId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过菜单ID获得所有角色数据" + }, + { + "Enabled": true, + "Key": "RoleHelper-RetrieveRolesByGroupId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过部门ID获得所有角色数据" + }, + { + "Enabled": true, + "Key": "GroupHelper-RetrieveGroups", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有部门数据" + }, + { + "Enabled": true, + "Key": "GroupHelper-RetrieveGroupsByUserId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过用户ID获得所有部门数据" + }, + { + "Enabled": true, + "Key": "GroupHelper-RetrieveGroupsByRoleId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过角色ID获得所有部门数据" + }, + { + "Enabled": true, + "Key": "AppHelper-RetrieveAppsByRoleId", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "通过角色ID获得所有应用程序数据" + }, + { + "Enabled": true, + "Key": "DictHelper-RetrieveDictsCategory", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "字典分类数据" + }, + { + "Enabled": true, + "Key": "ExceptionHelper-RetrieveExceptions", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "程序异常数据" + }, + { + "Enabled": true, + "Key": "MessageHelper-RetrieveMessages", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "站内消息数据" + }, + { + "Enabled": true, + "Key": "TaskHelper-RetrieveTasks", + "Interval": 600000, + "SlidingExpiration": true, + "Desc": "所有任务数据" + } + ] + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/css/motronic.css b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/css/motronic.css new file mode 100644 index 00000000..03092706 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/css/motronic.css @@ -0,0 +1,28 @@ +.layout.is-page .layout-side { + color: #3f4254; + background-color: #fff; + box-shadow: 0 0 28px 0 rgb(82 63 105 / 5%); +} + +.layout.is-page .layout-user .layout-title { + color: #3f4254; +} + +.layout.is-page .layout-footer { + background-color: #f8f9fa; +} + +.layout-gotop { + background: #e9ecef; + color: #3f4254; +} + + .layout-gotop:hover { + background-color: #dee2e6; + } + +@media (min-width: 768px) { + .sidebar { + background-color: #fff !important; + } +} diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/css/site.css b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/css/site.css new file mode 100644 index 00000000..c252a727 --- /dev/null +++ b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/css/site.css @@ -0,0 +1,36 @@ +html, body { + font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; +} + +#blazor-error-ui { + background: lightyellow; + bottom: 0; + box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2); + display: none; + left: 0; + padding: 0.6rem 1.25rem 0.7rem 1.25rem; + position: fixed; + width: 100%; + z-index: 1000; +} + + #blazor-error-ui .dismiss { + cursor: pointer; + position: absolute; + right: 0.75rem; + top: 0.5rem; + } + +.blazor-error-boundary { + background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121; + padding: 1rem 1rem 1rem 3.7rem; + color: white; +} + + .blazor-error-boundary::after { + content: "An error has occurred." + } + +.tabs-border-card { + box-shadow: none; +} diff --git a/src/admin/Bootstrap.Admin/wwwroot/favicon.ico b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/favicon.ico similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/favicon.ico rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/favicon.ico diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/favicon.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/favicon.png new file mode 100644 index 00000000..6fa9b3b1 Binary files /dev/null and b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/favicon.png differ diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/404.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/404.jpg new file mode 100644 index 00000000..0bc524ce Binary files /dev/null and b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/404.jpg differ diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/404.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/404.png new file mode 100644 index 00000000..8382dd7a Binary files /dev/null and b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/404.png differ diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/404_icon.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/404_icon.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/404_icon.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/404_icon.png diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/500.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/500.png new file mode 100644 index 00000000..6f5f30b7 Binary files /dev/null and b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/500.png differ diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo-C.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/Argo-C.png similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo-C.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/Argo-C.png diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/Argo.png similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/Argo.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/aliyun-default.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/aliyun-default.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/aliyun-default.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/aliyun-default.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/banner4.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/banner4.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/banner4.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/banner4.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/bg.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/bg.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/bg.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/bg.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/bg2.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg2.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/bg2.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg2.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/bg3.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg3.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/bg3.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg3.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/bg4.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg4.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/bg4.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg4.jpg diff --git a/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg404.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg404.png new file mode 100644 index 00000000..e7678b31 Binary files /dev/null and b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/bg404.png differ diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/blazor.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/blazor.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/blazor.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/blazor.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/blazor.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/blazor.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/blazor.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/blazor.svg diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/wwwroot/images/brand.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/brand.png similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/wwwroot/images/brand.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/brand.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/cover-bg.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/cover-bg.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/cover-bg.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/cover-bg.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/dingding.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/dingding.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/dingding.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/dingding.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/downloadwindows_icon.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/downloadwindows_icon.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/downloadwindows_icon.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/downloadwindows_icon.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/enterprise.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/enterprise.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/enterprise.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/enterprise.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/error.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/error.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/error.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/error.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/error_icon.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/error_icon.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/error_icon.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/error_icon.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/git.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/git.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/git.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/git.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/gitee.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/gitee.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/gitee.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/gitee.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/left-1.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/left-1.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/left-1.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/left-1.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/left-2.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/left-2.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/left-2.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/left-2.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/left.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/left.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/left.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/left.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/loading-sm.gif b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/loading-sm.gif similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/loading-sm.gif rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/loading-sm.gif diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/lock-bg.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/lock-bg.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/lock-bg.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/lock-bg.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/login-background.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/login-background.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/login-background.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/login-background.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/logo.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/logo.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/logo1.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo1.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/logo1.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo1.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/logo2.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo2.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/logo2.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo2.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/logo3.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo3.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/logo3.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo3.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/logo4.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo4.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/logo4.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo4.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/logo5.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo5.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/logo5.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo5.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/logo6.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo6.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/logo6.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo6.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/logo7.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo7.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/logo7.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/logo7.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/nav-expand.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/nav-expand.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/nav-expand.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/nav-expand.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/netcore.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/netcore.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/netcore.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/netcore.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/netcore2.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/netcore2.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/netcore2.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/netcore2.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/qq-2.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/qq-2.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/qq-2.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/qq-2.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/qq-3.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/qq-3.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/qq-3.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/qq-3.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/qq.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/qq.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/qq.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/qq.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/success.png b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/success.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/success.png rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/success.png diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/uploader/default.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/uploader/default.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/uploader/default.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/uploader/default.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/weibo.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/weibo.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/weibo.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/weibo.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/weixin-2.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/weixin-2.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/weixin-2.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/weixin-2.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/weixin.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/weixin.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/weixin.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/weixin.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/zhifubao-2.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/zhifubao-2.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/zhifubao-2.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/zhifubao-2.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/zhifubao-3.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/zhifubao-3.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/zhifubao-3.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/zhifubao-3.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/images/zhifubao.svg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/zhifubao.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/images/zhifubao.svg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/images/zhifubao.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic0.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic0.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic0.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic0.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic1.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic1.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic1.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic1.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic2.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic2.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic2.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic2.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic3.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic3.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic3.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic3.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic4.jpg b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic4.jpg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic4.jpg rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/images/Pic4.jpg diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/captcha/longbow.slidercaptcha.js b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/longbow.slidercaptcha.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/captcha/longbow.slidercaptcha.js rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/longbow.slidercaptcha.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/captcha/slidercaptcha.css b/src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/slidercaptcha.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/captcha/slidercaptcha.css rename to src/blazor/admin/Bootstrap.Admin.Blazor/wwwroot/lib/captcha/slidercaptcha.css diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/App.razor b/src/blazor/client/Bootstrap.Client.Blazor.Shared/App.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/App.razor rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/App.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/Bootstrap.Client.Blazor.Shared.csproj b/src/blazor/client/Bootstrap.Client.Blazor.Shared/Bootstrap.Client.Blazor.Shared.csproj similarity index 78% rename from src/blazor/Bootstrap.Client.Blazor.Shared/Bootstrap.Client.Blazor.Shared.csproj rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/Bootstrap.Client.Blazor.Shared.csproj index e4f6f94b..ee3662cc 100644 --- a/src/blazor/Bootstrap.Client.Blazor.Shared/Bootstrap.Client.Blazor.Shared.csproj +++ b/src/blazor/client/Bootstrap.Client.Blazor.Shared/Bootstrap.Client.Blazor.Shared.csproj @@ -11,7 +11,7 @@ - + diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/Pages/Index.razor b/src/blazor/client/Bootstrap.Client.Blazor.Shared/Pages/Index.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/Pages/Index.razor rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/Pages/Index.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/Pages/Test.razor b/src/blazor/client/Bootstrap.Client.Blazor.Shared/Pages/Test.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/Pages/Test.razor rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/Pages/Test.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/Shared/MainLayout.razor b/src/blazor/client/Bootstrap.Client.Blazor.Shared/Shared/MainLayout.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/Shared/MainLayout.razor rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/Shared/MainLayout.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/Shared/MainLayout.razor.cs b/src/blazor/client/Bootstrap.Client.Blazor.Shared/Shared/MainLayout.razor.cs similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/Shared/MainLayout.razor.cs rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/Shared/MainLayout.razor.cs diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/Shared/RedirectToLogin.cs b/src/blazor/client/Bootstrap.Client.Blazor.Shared/Shared/RedirectToLogin.cs similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/Shared/RedirectToLogin.cs rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/Shared/RedirectToLogin.cs diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/Shared/Widget.razor b/src/blazor/client/Bootstrap.Client.Blazor.Shared/Shared/Widget.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/Shared/Widget.razor rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/Shared/Widget.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/_Imports.razor b/src/blazor/client/Bootstrap.Client.Blazor.Shared/_Imports.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/_Imports.razor rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/_Imports.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.Shared/wwwroot/css/site.css b/src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/css/site.css similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.Shared/wwwroot/css/site.css rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/css/site.css diff --git a/src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo-C.png b/src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo-C.png new file mode 100644 index 00000000..47eb8469 Binary files /dev/null and b/src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo-C.png differ diff --git a/src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo.png b/src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo.png new file mode 100644 index 00000000..ba51e0a5 Binary files /dev/null and b/src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/images/Argo.png differ diff --git a/src/admin/Bootstrap.Admin/wwwroot/favicon.png b/src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/images/brand.png similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/favicon.png rename to src/blazor/client/Bootstrap.Client.Blazor.Shared/wwwroot/images/brand.png diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/App.razor b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/App.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/App.razor rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/App.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Bootstrap.Client.Blazor.WebAssembly.csproj b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Bootstrap.Client.Blazor.WebAssembly.csproj similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Bootstrap.Client.Blazor.WebAssembly.csproj rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Bootstrap.Client.Blazor.WebAssembly.csproj diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Pages/Counter.razor b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Pages/Counter.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Pages/Counter.razor rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Pages/Counter.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Pages/FetchData.razor b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Pages/FetchData.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Pages/FetchData.razor rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Pages/FetchData.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Pages/Index.razor b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Pages/Index.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Pages/Index.razor rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Pages/Index.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Program.cs b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Program.cs similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Program.cs rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Program.cs diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Properties/launchSettings.json b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Properties/launchSettings.json similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Properties/launchSettings.json rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Properties/launchSettings.json diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/MainLayout.razor b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/MainLayout.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/MainLayout.razor rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/MainLayout.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/MainLayout.razor.css b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/MainLayout.razor.css similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/MainLayout.razor.css rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/MainLayout.razor.css diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/NavMenu.razor b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/NavMenu.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/NavMenu.razor rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/NavMenu.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/NavMenu.razor.css b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/NavMenu.razor.css similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/NavMenu.razor.css rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/NavMenu.razor.css diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/SurveyPrompt.razor b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/SurveyPrompt.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/Shared/SurveyPrompt.razor rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/Shared/SurveyPrompt.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/_Imports.razor b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/_Imports.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/_Imports.razor rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/_Imports.razor diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/app.css b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/app.css similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/app.css rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/app.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/bootstrap/bootstrap.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/bootstrap/bootstrap.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css.map b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/bootstrap/bootstrap.min.css.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css.map rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/bootstrap/bootstrap.min.css.map diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/FONT-LICENSE b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/FONT-LICENSE similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/FONT-LICENSE rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/FONT-LICENSE diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/ICON-LICENSE b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/ICON-LICENSE similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/ICON-LICENSE rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/ICON-LICENSE diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/README.md b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/README.md similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/README.md rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/README.md diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/css/open-iconic-bootstrap.min.css b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/css/open-iconic-bootstrap.min.css similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/css/open-iconic-bootstrap.min.css rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/css/open-iconic-bootstrap.min.css diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.eot b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.eot similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.eot rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.eot diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.otf b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.otf similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.otf rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.otf diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.svg b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.svg similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.svg rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.svg diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.ttf diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.woff b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.woff similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.woff rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/open-iconic/font/fonts/open-iconic.woff diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/favicon.ico b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/favicon.ico similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/favicon.ico rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/favicon.ico diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/index.html b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/index.html similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/index.html rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/index.html diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/sample-data/weather.json b/src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/sample-data/weather.json similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/sample-data/weather.json rename to src/blazor/client/Bootstrap.Client.Blazor.WebAssembly/wwwroot/sample-data/weather.json diff --git a/src/blazor/Bootstrap.Client.Blazor/Bootstrap.Client.Blazor.csproj b/src/blazor/client/Bootstrap.Client.Blazor/Bootstrap.Client.Blazor.csproj similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/Bootstrap.Client.Blazor.csproj rename to src/blazor/client/Bootstrap.Client.Blazor/Bootstrap.Client.Blazor.csproj diff --git a/src/blazor/Bootstrap.Client.Blazor/Pages/_Host.cshtml b/src/blazor/client/Bootstrap.Client.Blazor/Pages/_Host.cshtml similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/Pages/_Host.cshtml rename to src/blazor/client/Bootstrap.Client.Blazor/Pages/_Host.cshtml diff --git a/src/blazor/Bootstrap.Client.Blazor/Program.cs b/src/blazor/client/Bootstrap.Client.Blazor/Program.cs similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/Program.cs rename to src/blazor/client/Bootstrap.Client.Blazor/Program.cs diff --git a/src/blazor/Bootstrap.Client.Blazor/Properties/launchSettings.json b/src/blazor/client/Bootstrap.Client.Blazor/Properties/launchSettings.json similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/Properties/launchSettings.json rename to src/blazor/client/Bootstrap.Client.Blazor/Properties/launchSettings.json diff --git a/src/blazor/Bootstrap.Client.Blazor/Startup.cs b/src/blazor/client/Bootstrap.Client.Blazor/Startup.cs similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/Startup.cs rename to src/blazor/client/Bootstrap.Client.Blazor/Startup.cs diff --git a/src/blazor/Bootstrap.Client.Blazor/_Imports.razor b/src/blazor/client/Bootstrap.Client.Blazor/_Imports.razor similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/_Imports.razor rename to src/blazor/client/Bootstrap.Client.Blazor/_Imports.razor diff --git a/src/blazor/Bootstrap.Client.Blazor/appsettings.Development.json b/src/blazor/client/Bootstrap.Client.Blazor/appsettings.Development.json similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/appsettings.Development.json rename to src/blazor/client/Bootstrap.Client.Blazor/appsettings.Development.json diff --git a/src/blazor/Bootstrap.Client.Blazor/appsettings.json b/src/blazor/client/Bootstrap.Client.Blazor/appsettings.json similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/appsettings.json rename to src/blazor/client/Bootstrap.Client.Blazor/appsettings.json diff --git a/src/blazor/Bootstrap.Client.Blazor/wwwroot/favicon.ico b/src/blazor/client/Bootstrap.Client.Blazor/wwwroot/favicon.ico similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/wwwroot/favicon.ico rename to src/blazor/client/Bootstrap.Client.Blazor/wwwroot/favicon.ico diff --git a/src/blazor/Bootstrap.Client.Blazor/wwwroot/favicon.png b/src/blazor/client/Bootstrap.Client.Blazor/wwwroot/favicon.png similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor/wwwroot/favicon.png rename to src/blazor/client/Bootstrap.Client.Blazor/wwwroot/favicon.png diff --git a/src/client/Bootstrap.Client/Views/Tools/Encrpty.cshtml b/src/client/Bootstrap.Client/Views/Tools/Encrpty.cshtml deleted file mode 100644 index ff491731..00000000 --- a/src/client/Bootstrap.Client/Views/Tools/Encrpty.cshtml +++ /dev/null @@ -1,38 +0,0 @@ -@model EncrptyModel -@{ - ViewData["Title"] = "加密工具类"; -} -@section javascript { - -} -
-
加密工具
-
-
-
-
- - -
-
- -
- -
- -
-
-
-
- -
- -
- -
-
-
-
-
-
-
diff --git a/src/client/Bootstrap.Client/Views/Tools/Mail.cshtml b/src/client/Bootstrap.Client/Views/Tools/Mail.cshtml deleted file mode 100644 index 9cb00cf3..00000000 --- a/src/client/Bootstrap.Client/Views/Tools/Mail.cshtml +++ /dev/null @@ -1,14 +0,0 @@ -@model MailModel -@{ - ViewData["Title"] = "邮件测试工具"; -} -
-
-
- -
- -
-
-
-
\ No newline at end of file diff --git a/src/client/Bootstrap.Client/Views/Tools/SQL.cshtml b/src/client/Bootstrap.Client/Views/Tools/SQL.cshtml deleted file mode 100644 index 74609321..00000000 --- a/src/client/Bootstrap.Client/Views/Tools/SQL.cshtml +++ /dev/null @@ -1,17 +0,0 @@ -@model SQLModel -@{ - ViewData["Title"] = "SQL 脚本执行器"; -} -
-
- -
-
-
- -
- -
-
-
-
\ No newline at end of file diff --git a/src/admin/Bootstrap.Admin/Bootstrap.Admin.csproj b/src/mvc/admin/Bootstrap.Admin/Bootstrap.Admin.csproj similarity index 100% rename from src/admin/Bootstrap.Admin/Bootstrap.Admin.csproj rename to src/mvc/admin/Bootstrap.Admin/Bootstrap.Admin.csproj diff --git a/src/admin/Bootstrap.Admin/BootstrapAdmin.db b/src/mvc/admin/Bootstrap.Admin/BootstrapAdmin.db similarity index 100% rename from src/admin/Bootstrap.Admin/BootstrapAdmin.db rename to src/mvc/admin/Bootstrap.Admin/BootstrapAdmin.db diff --git a/src/admin/Bootstrap.Admin/Controllers/AccountController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/AccountController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/AccountController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/AccountController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/AdminController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/AdminController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/AdminController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/AdminController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/AnalyseController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/AnalyseController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/AnalyseController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/AnalyseController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/AppsController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/AppsController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/AppsController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/AppsController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/CategoryController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/CategoryController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/CategoryController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/CategoryController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/DictsController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/DictsController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/DictsController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/DictsController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/ExceptionsController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/ExceptionsController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/ExceptionsController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/ExceptionsController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/GiteeController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/GiteeController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/GiteeController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/GiteeController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/GroupsController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/GroupsController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/GroupsController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/GroupsController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/HealthsController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/HealthsController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/HealthsController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/HealthsController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/InterfaceController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/InterfaceController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/InterfaceController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/InterfaceController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/LoginController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/LoginController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/LoginController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/LoginController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/LogsController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/LogsController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/LogsController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/LogsController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/MenusController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/MenusController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/MenusController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/MenusController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/MessagesController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/MessagesController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/MessagesController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/MessagesController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/NewController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/NewController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/NewController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/NewController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/NotificationsController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/NotificationsController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/NotificationsController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/NotificationsController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/OnlineUsersController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/OnlineUsersController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/OnlineUsersController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/OnlineUsersController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/ProfilesController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/ProfilesController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/ProfilesController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/ProfilesController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/RegisterController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/RegisterController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/RegisterController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/RegisterController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/RolesController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/RolesController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/RolesController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/RolesController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/SQLController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/SQLController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/SQLController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/SQLController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/SettingsController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/SettingsController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/SettingsController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/SettingsController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/TasksController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/TasksController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/TasksController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/TasksController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/TasksLogController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/TasksLogController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/TasksLogController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/TasksLogController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/TracesController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/TracesController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/TracesController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/TracesController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/Api/UsersController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/Api/UsersController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/Api/UsersController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/Api/UsersController.cs diff --git a/src/admin/Bootstrap.Admin/Controllers/HomeController.cs b/src/mvc/admin/Bootstrap.Admin/Controllers/HomeController.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Controllers/HomeController.cs rename to src/mvc/admin/Bootstrap.Admin/Controllers/HomeController.cs diff --git a/src/admin/Bootstrap.Admin/Dockerfile b/src/mvc/admin/Bootstrap.Admin/Dockerfile similarity index 100% rename from src/admin/Bootstrap.Admin/Dockerfile rename to src/mvc/admin/Bootstrap.Admin/Dockerfile diff --git a/src/admin/Bootstrap.Admin/Extensions/AutoGenerateDatabaseExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Extensions/AutoGenerateDatabaseExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Extensions/AutoGenerateDatabaseExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Extensions/AutoGenerateDatabaseExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Extensions/CloudLoggerExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Extensions/CloudLoggerExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Extensions/CloudLoggerExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Extensions/CloudLoggerExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Extensions/SMSExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Extensions/SMSExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Extensions/SMSExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Extensions/SMSExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Extensions/SignalRExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Extensions/SignalRExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Extensions/SignalRExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Extensions/SignalRExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Extensions/SwaggerExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Extensions/SwaggerExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Extensions/SwaggerExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Extensions/SwaggerExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Tasks/TasksExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Extensions/TasksExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Tasks/TasksExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Extensions/TasksExtensions.cs diff --git a/src/admin/Bootstrap.Admin/HealthChecks/DBHealthCheck.cs b/src/mvc/admin/Bootstrap.Admin/HealthChecks/DBHealthCheck.cs similarity index 100% rename from src/admin/Bootstrap.Admin/HealthChecks/DBHealthCheck.cs rename to src/mvc/admin/Bootstrap.Admin/HealthChecks/DBHealthCheck.cs diff --git a/src/admin/Bootstrap.Admin/HealthChecks/GiteeHttpClient.cs b/src/mvc/admin/Bootstrap.Admin/HealthChecks/GiteeHttpClient.cs similarity index 100% rename from src/admin/Bootstrap.Admin/HealthChecks/GiteeHttpClient.cs rename to src/mvc/admin/Bootstrap.Admin/HealthChecks/GiteeHttpClient.cs diff --git a/src/admin/Bootstrap.Admin/HealthChecks/GiteeHttpHealthCheck.cs b/src/mvc/admin/Bootstrap.Admin/HealthChecks/GiteeHttpHealthCheck.cs similarity index 100% rename from src/admin/Bootstrap.Admin/HealthChecks/GiteeHttpHealthCheck.cs rename to src/mvc/admin/Bootstrap.Admin/HealthChecks/GiteeHttpHealthCheck.cs diff --git a/src/admin/Bootstrap.Admin/HealthChecks/HealthChecksBuilderExtensions.cs b/src/mvc/admin/Bootstrap.Admin/HealthChecks/HealthChecksBuilderExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/HealthChecks/HealthChecksBuilderExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/HealthChecks/HealthChecksBuilderExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Models/AdminModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/AdminModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/AdminModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/AdminModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/ErrorModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/ErrorModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/ErrorModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/ErrorModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/HeaderBarModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/HeaderBarModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/HeaderBarModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/HeaderBarModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/LockModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/LockModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/LockModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/LockModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/LoginModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/LoginModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/LoginModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/LoginModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/MessageCountModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/MessageCountModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/MessageCountModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/MessageCountModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/ModelBase.cs b/src/mvc/admin/Bootstrap.Admin/Models/ModelBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/ModelBase.cs rename to src/mvc/admin/Bootstrap.Admin/Models/ModelBase.cs diff --git a/src/admin/Bootstrap.Admin/Models/NavigatorBarModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/NavigatorBarModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/NavigatorBarModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/NavigatorBarModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/ProfilesModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/ProfilesModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/ProfilesModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/ProfilesModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/SettingsModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/SettingsModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/SettingsModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/SettingsModel.cs diff --git a/src/admin/Bootstrap.Admin/Models/TaskModel.cs b/src/mvc/admin/Bootstrap.Admin/Models/TaskModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Models/TaskModel.cs rename to src/mvc/admin/Bootstrap.Admin/Models/TaskModel.cs diff --git a/src/admin/Bootstrap.Admin/Pages/App.razor b/src/mvc/admin/Bootstrap.Admin/Pages/App.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/App.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/App.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Alert.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Alert.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Alert.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Alert.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/AlertBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/AlertBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/AlertBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/AlertBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/AssignModal.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/AssignModal.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/AssignModal.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/AssignModal.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/AssignModalBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/AssignModalBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/AssignModalBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/AssignModalBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/AuthorizateComponent.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/AuthorizateComponent.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/AuthorizateComponent.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/AuthorizateComponent.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/BootstrapAdminDataAnnotationsValidator.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/BootstrapAdminDataAnnotationsValidator.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/BootstrapAdminDataAnnotationsValidator.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/BootstrapAdminDataAnnotationsValidator.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/BootstrapAdminEditContextDataAnnotationsExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/BootstrapAdminEditContextDataAnnotationsExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/BootstrapAdminEditContextDataAnnotationsExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/BootstrapAdminEditContextDataAnnotationsExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/CheckBoxState.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/CheckBoxState.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/CheckBoxState.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/CheckBoxState.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Checkbox.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Checkbox.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Checkbox.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Checkbox.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/CheckboxBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/CheckboxBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/CheckboxBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/CheckboxBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Color.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Color.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Color.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Color.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/ConditionComponent.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/ConditionComponent.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/ConditionComponent.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/ConditionComponent.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Dropdown.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Dropdown.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Dropdown.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Dropdown.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/DropdownBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/DropdownBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/DropdownBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/DropdownBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/EditPage.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/EditPage.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/EditPage.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/EditPage.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/EditPageBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/EditPageBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/EditPageBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/EditPageBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/EqualToValidator.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/EqualToValidator.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/EqualToValidator.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/EqualToValidator.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Footer.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Footer.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Footer.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Footer.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Header.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Header.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Header.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Header.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/HeaderBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/HeaderBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/HeaderBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/HeaderBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/IRules.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/IRules.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/IRules.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/IRules.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/ITableHeader.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/ITableHeader.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/ITableHeader.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/ITableHeader.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/IValidateComponent.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/IValidateComponent.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/IValidateComponent.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/IValidateComponent.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/LgbEditForm.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbEditForm.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/LgbEditForm.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbEditForm.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/LgbEditFormBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbEditFormBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/LgbEditFormBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbEditFormBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/LgbInput.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbInput.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/LgbInput.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbInput.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/LgbInputBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbInputBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/LgbInputBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbInputBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/LgbInputText.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbInputText.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/LgbInputText.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbInputText.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/LgbTableHeader.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbTableHeader.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/LgbTableHeader.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/LgbTableHeader.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Modal.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Modal.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Modal.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Modal.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/ModalBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/ModalBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/ModalBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/ModalBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/NavItem.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/NavItem.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/NavItem.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/NavItem.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/NavItemBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/NavItemBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/NavItemBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/NavItemBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/NavItems.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/NavItems.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/NavItems.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/NavItems.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/PageContent.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/PageContent.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/PageContent.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/PageContent.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/PageContentAttributes.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/PageContentAttributes.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/PageContentAttributes.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/PageContentAttributes.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Pagination.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Pagination.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Pagination.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Pagination.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/PaginationBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/PaginationBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/PaginationBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/PaginationBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/PaginationItem.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/PaginationItem.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/PaginationItem.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/PaginationItem.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Placement.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Placement.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Placement.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Placement.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Query.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Query.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Query.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Query.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/QueryBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/QueryBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/QueryBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/QueryBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/QueryData.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/QueryData.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/QueryData.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/QueryData.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/QueryPageOptions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/QueryPageOptions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/QueryPageOptions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/QueryPageOptions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/RequiredValidator.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/RequiredValidator.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/RequiredValidator.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/RequiredValidator.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Section.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Section.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Section.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Section.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SectionBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SectionBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SectionBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SectionBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Select.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Select.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Select.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Select.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SelectBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SelectBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SelectBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SelectBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SelectItem.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SelectItem.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SelectItem.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SelectItem.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SelectItemBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SelectItemBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SelectItemBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SelectItemBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SelectedItem.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SelectedItem.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SelectedItem.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SelectedItem.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SideBar.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SideBar.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SideBar.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SideBar.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SideBarBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SideBarBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SideBarBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SideBarBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/StringLengthValidator.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/StringLengthValidator.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/StringLengthValidator.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/StringLengthValidator.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SubmitModal.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SubmitModal.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SubmitModal.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SubmitModal.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/SubmitModalBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/SubmitModalBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/SubmitModalBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/SubmitModalBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Tab.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Tab.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Tab.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Tab.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TabBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TabBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TabBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TabBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TabSet.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TabSet.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TabSet.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TabSet.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TabSetBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TabSetBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TabSetBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TabSetBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Table.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Table.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Table.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Table.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TableBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TableBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TableBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TableBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TableHeader.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TableHeader.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TableHeader.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TableHeader.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TableHeaderBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TableHeaderBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TableHeaderBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TableHeaderBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TableHeaderContent.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TableHeaderContent.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TableHeaderContent.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TableHeaderContent.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TableToolbar.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TableToolbar.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TableToolbar.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TableToolbar.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TableToolbarBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TableToolbarBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TableToolbarBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TableToolbarBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TableToolbarButton.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TableToolbarButton.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TableToolbarButton.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TableToolbarButton.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/TableToolbarContent.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/TableToolbarContent.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/TableToolbarContent.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/TableToolbarContent.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/ToastCategory.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/ToastCategory.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/ToastCategory.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/ToastCategory.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/Toggle.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Components/Toggle.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/Toggle.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/Toggle.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Components/ToggleBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/ToggleBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/ToggleBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/ToggleBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/ValidateInputBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/ValidateInputBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/ValidateInputBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/ValidateInputBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Components/ValidatorComponentBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Components/ValidatorComponentBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Components/ValidatorComponentBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Components/ValidatorComponentBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Extensions/DisplayNamesExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Extensions/DisplayNamesExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Extensions/DisplayNamesExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Extensions/DisplayNamesExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Extensions/HttpContextExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Extensions/HttpContextExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Extensions/HttpContextExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Extensions/HttpContextExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Extensions/JSRuntimeExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Extensions/JSRuntimeExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Extensions/JSRuntimeExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Extensions/JSRuntimeExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Extensions/ObjectExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Extensions/ObjectExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Extensions/ObjectExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Extensions/ObjectExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Extensions/PagesExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Extensions/PagesExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Extensions/PagesExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Extensions/PagesExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Extensions/QueryPageOptionsExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Extensions/QueryPageOptionsExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Extensions/QueryPageOptionsExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Extensions/QueryPageOptionsExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Extensions/UrlHelperExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Extensions/UrlHelperExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Extensions/UrlHelperExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Extensions/UrlHelperExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Extensions/UserExtensions.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Extensions/UserExtensions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Extensions/UserExtensions.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Extensions/UserExtensions.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Models/ProfilesModel.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Models/ProfilesModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Models/ProfilesModel.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Models/ProfilesModel.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Models/SettingsModel.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Models/SettingsModel.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Models/SettingsModel.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Models/SettingsModel.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Shared/AdminLayout.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Shared/AdminLayout.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Shared/AdminLayout.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Shared/AdminLayout.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Shared/AdminLayout.razor.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Shared/AdminLayout.razor.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Shared/AdminLayout.razor.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Shared/AdminLayout.razor.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Shared/DefaultLayout.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Shared/DefaultLayout.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Shared/DefaultLayout.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Shared/DefaultLayout.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Shared/DefaultLayout.razor.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Shared/DefaultLayout.razor.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Shared/DefaultLayout.razor.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Shared/DefaultLayout.razor.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Shared/MainLayout.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Shared/MainLayout.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Shared/MainLayout.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Shared/MainLayout.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Shared/NotFoundLayout.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Shared/NotFoundLayout.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Shared/NotFoundLayout.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Shared/NotFoundLayout.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Dicts.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Dicts.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Dicts.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Dicts.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/DictsBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/DictsBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/DictsBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/DictsBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Exceptions.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Exceptions.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Exceptions.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Exceptions.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/ExceptionsBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/ExceptionsBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/ExceptionsBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/ExceptionsBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Groups.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Groups.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Groups.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Groups.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/GroupsBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/GroupsBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/GroupsBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/GroupsBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Home.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Home.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Home.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Home.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Logins.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Logins.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Logins.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Logins.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/LoginsBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/LoginsBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/LoginsBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/LoginsBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Logs.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Logs.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Logs.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Logs.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/LogsBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/LogsBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/LogsBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/LogsBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Menus.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Menus.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Menus.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Menus.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/MenusBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/MenusBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/MenusBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/MenusBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Notifications.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Notifications.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Notifications.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Notifications.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/NotificationsBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/NotificationsBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/NotificationsBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/NotificationsBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Online.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Online.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Online.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Online.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/OnlineBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/OnlineBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/OnlineBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/OnlineBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/PageBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/PageBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/PageBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/PageBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Profiles.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Profiles.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Profiles.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Profiles.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/ProfilesBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/ProfilesBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/ProfilesBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/ProfilesBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/QueryPageBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/QueryPageBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/QueryPageBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/QueryPageBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Roles.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Roles.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Roles.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Roles.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/RolesBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/RolesBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/RolesBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/RolesBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/SQL.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/SQL.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/SQL.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/SQL.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/SQL.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/SQL.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/SQL.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/SQL.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Settings.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Settings.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Settings.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Settings.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/SettingsBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/SettingsBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/SettingsBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/SettingsBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Tasks.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Tasks.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Tasks.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Tasks.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/TasksBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/TasksBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/TasksBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/TasksBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Traces.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Traces.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Traces.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Traces.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/TracesBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/TracesBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/TracesBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/TracesBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/Users.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Users.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/Users.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/Users.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/UsersBase.cs b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/UsersBase.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/UsersBase.cs rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/UsersBase.cs diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Admin/_Imports.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/_Imports.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Admin/_Imports.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Admin/_Imports.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Home.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Home.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Home.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Home.razor diff --git a/src/admin/Bootstrap.Admin/Pages/Views/Index.razor b/src/mvc/admin/Bootstrap.Admin/Pages/Views/Index.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/Views/Index.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/Views/Index.razor diff --git a/src/admin/Bootstrap.Admin/Pages/_Host.cshtml b/src/mvc/admin/Bootstrap.Admin/Pages/_Host.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/_Host.cshtml rename to src/mvc/admin/Bootstrap.Admin/Pages/_Host.cshtml diff --git a/src/admin/Bootstrap.Admin/Pages/_Imports.razor b/src/mvc/admin/Bootstrap.Admin/Pages/_Imports.razor similarity index 100% rename from src/admin/Bootstrap.Admin/Pages/_Imports.razor rename to src/mvc/admin/Bootstrap.Admin/Pages/_Imports.razor diff --git a/src/admin/Bootstrap.Admin/Program.cs b/src/mvc/admin/Bootstrap.Admin/Program.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Program.cs rename to src/mvc/admin/Bootstrap.Admin/Program.cs diff --git a/src/admin/Bootstrap.Admin/Properties/launchSettings.json b/src/mvc/admin/Bootstrap.Admin/Properties/launchSettings.json similarity index 100% rename from src/admin/Bootstrap.Admin/Properties/launchSettings.json rename to src/mvc/admin/Bootstrap.Admin/Properties/launchSettings.json diff --git a/src/admin/Bootstrap.Admin/Query/QueryDictOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryDictOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryDictOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryDictOption.cs diff --git a/src/admin/Bootstrap.Admin/Query/QueryExceptionOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryExceptionOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryExceptionOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryExceptionOption.cs diff --git a/src/admin/Bootstrap.Admin/Query/QueryGroupOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryGroupOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryGroupOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryGroupOption.cs diff --git a/src/admin/Bootstrap.Admin/Query/QueryLogOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryLogOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryLogOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryLogOption.cs diff --git a/src/admin/Bootstrap.Admin/Query/QueryLoginOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryLoginOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryLoginOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryLoginOption.cs diff --git a/src/admin/Bootstrap.Admin/Query/QueryMenuOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryMenuOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryMenuOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryMenuOption.cs diff --git a/src/admin/Bootstrap.Admin/Query/QueryRoleOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryRoleOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryRoleOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryRoleOption.cs diff --git a/src/admin/Bootstrap.Admin/Query/QuerySQLOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QuerySQLOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QuerySQLOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QuerySQLOption.cs diff --git a/src/admin/Bootstrap.Admin/Query/QueryTraceOptions.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryTraceOptions.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryTraceOptions.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryTraceOptions.cs diff --git a/src/admin/Bootstrap.Admin/Query/QueryUserOption.cs b/src/mvc/admin/Bootstrap.Admin/Query/QueryUserOption.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Query/QueryUserOption.cs rename to src/mvc/admin/Bootstrap.Admin/Query/QueryUserOption.cs diff --git a/src/admin/Bootstrap.Admin/Startup.cs b/src/mvc/admin/Bootstrap.Admin/Startup.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Startup.cs rename to src/mvc/admin/Bootstrap.Admin/Startup.cs diff --git a/src/admin/Bootstrap.Admin/Tasks/DefaultTaskExecutor.cs b/src/mvc/admin/Bootstrap.Admin/Tasks/DefaultTaskExecutor.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Tasks/DefaultTaskExecutor.cs rename to src/mvc/admin/Bootstrap.Admin/Tasks/DefaultTaskExecutor.cs diff --git a/src/admin/Bootstrap.Admin/Tasks/TaskLogHub.cs b/src/mvc/admin/Bootstrap.Admin/Tasks/TaskLogHub.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Tasks/TaskLogHub.cs rename to src/mvc/admin/Bootstrap.Admin/Tasks/TaskLogHub.cs diff --git a/src/admin/Bootstrap.Admin/Tasks/TaskWidget.cs b/src/mvc/admin/Bootstrap.Admin/Tasks/TaskWidget.cs similarity index 100% rename from src/admin/Bootstrap.Admin/Tasks/TaskWidget.cs rename to src/mvc/admin/Bootstrap.Admin/Tasks/TaskWidget.cs diff --git a/src/admin/Bootstrap.Admin/Views/Account/Lock.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Account/Lock.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Account/Lock.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Account/Lock.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Account/Login-Blue.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Account/Login-Blue.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Account/Login-Blue.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Account/Login-Blue.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Account/Login-Gitee.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Account/Login-Gitee.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Account/Login-Gitee.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Account/Login-Gitee.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Account/Login-LTE.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Account/Login-LTE.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Account/Login-LTE.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Account/Login-LTE.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Account/Login-Tec.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Account/Login-Tec.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Account/Login-Tec.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Account/Login-Tec.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Account/Login.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Account/Login.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Account/Login.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Account/Login.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Analyse.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Analyse.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Analyse.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Analyse.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/AwesomeIcon.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/AwesomeIcon.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/AwesomeIcon.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/AwesomeIcon.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Dicts.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Dicts.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Dicts.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Dicts.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Exceptions.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Exceptions.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Exceptions.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Exceptions.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/FAIcon.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/FAIcon.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/FAIcon.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/FAIcon.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Groups.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Groups.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Groups.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Groups.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Healths.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Healths.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Healths.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Healths.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/IconView.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/IconView.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/IconView.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/IconView.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Index.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Index.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Index.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Index.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Logins.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Logins.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Logins.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Logins.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Logs.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Logs.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Logs.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Logs.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Menus.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Menus.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Menus.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Menus.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Messages.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Messages.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Messages.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Messages.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Mobile.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Mobile.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Mobile.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Mobile.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Notifications.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Notifications.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Notifications.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Notifications.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Online.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Online.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Online.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Online.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Profiles.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Profiles.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Profiles.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Profiles.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Roles.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Roles.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Roles.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Roles.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/SQL.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/SQL.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/SQL.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/SQL.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Settings.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Settings.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Settings.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Settings.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Sidebar.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Sidebar.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Sidebar.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Sidebar.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Tasks.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Tasks.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Tasks.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Tasks.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Traces.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Traces.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Traces.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Traces.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Admin/Users.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Admin/Users.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Admin/Users.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Admin/Users.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Home/Index.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Home/Index.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Home/Index.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Home/Index.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/AppConfig.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/AppConfig.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/AppConfig.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/AppConfig.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/Error.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/Error.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/Error.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/Error.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/Footer.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/Footer.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/Footer.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/Footer.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/GroupConfig.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/GroupConfig.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/GroupConfig.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/GroupConfig.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/Header.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/Header.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/Header.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/Header.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/LoginFooter.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/LoginFooter.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/LoginFooter.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/LoginFooter.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/Navigator.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/Navigator.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/Navigator.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/Navigator.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/NavigatorConfig.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/NavigatorConfig.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/NavigatorConfig.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/NavigatorConfig.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/RoleConfig.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/RoleConfig.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/RoleConfig.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/RoleConfig.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/SubNavItem.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/SubNavItem.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/SubNavItem.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/SubNavItem.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/SubNavigation.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/SubNavigation.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/SubNavigation.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/SubNavigation.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/UserConfig.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/UserConfig.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/UserConfig.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/UserConfig.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/_Admin.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/_Admin.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/_Admin.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/_Admin.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/_Bootstrap.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/_Bootstrap.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/_Bootstrap.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/_Bootstrap.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/_Default.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/_Default.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/_Default.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/_Default.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/Shared/_Layout.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/Shared/_Layout.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/Shared/_Layout.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/Shared/_Layout.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/_ViewImports.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/_ViewImports.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/_ViewImports.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/_ViewImports.cshtml diff --git a/src/admin/Bootstrap.Admin/Views/_ViewStart.cshtml b/src/mvc/admin/Bootstrap.Admin/Views/_ViewStart.cshtml similarity index 100% rename from src/admin/Bootstrap.Admin/Views/_ViewStart.cshtml rename to src/mvc/admin/Bootstrap.Admin/Views/_ViewStart.cshtml diff --git a/src/admin/Bootstrap.Admin/appsettings.Development.json b/src/mvc/admin/Bootstrap.Admin/appsettings.Development.json similarity index 100% rename from src/admin/Bootstrap.Admin/appsettings.Development.json rename to src/mvc/admin/Bootstrap.Admin/appsettings.Development.json diff --git a/src/admin/Bootstrap.Admin/appsettings.json b/src/mvc/admin/Bootstrap.Admin/appsettings.json similarity index 99% rename from src/admin/Bootstrap.Admin/appsettings.json rename to src/mvc/admin/Bootstrap.Admin/appsettings.json index 35bb99d6..cdac270e 100644 --- a/src/admin/Bootstrap.Admin/appsettings.json +++ b/src/mvc/admin/Bootstrap.Admin/appsettings.json @@ -1,6 +1,5 @@ { "Logging": { - "IncludeScopes": false, "LogLevel": { "Default": "Warning" }, diff --git a/src/admin/Bootstrap.Admin/libman.json b/src/mvc/admin/Bootstrap.Admin/libman.json similarity index 100% rename from src/admin/Bootstrap.Admin/libman.json rename to src/mvc/admin/Bootstrap.Admin/libman.json diff --git a/src/admin/Bootstrap.Admin/wwwroot/browser/readme.txt b/src/mvc/admin/Bootstrap.Admin/wwwroot/browser/readme.txt similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/browser/readme.txt rename to src/mvc/admin/Bootstrap.Admin/wwwroot/browser/readme.txt diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/IE8.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/IE8.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/IE8.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/IE8.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/black.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/black.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/black.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/black.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/blazor.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/blazor.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/blazor.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/blazor.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/blue.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/blue.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/blue.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/blue.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/error.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/error.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/error.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/error.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/fa.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/fa.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/fa.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/fa.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/lock.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/lock.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/lock.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/lock.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/login-blue.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-blue.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/login-blue.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-blue.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/login-footer.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-footer.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/login-footer.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-footer.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/login-gitee.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-gitee.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/login-gitee.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-gitee.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/login-lte.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-lte.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/login-lte.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-lte.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/login-responsive-lte.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-responsive-lte.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/login-responsive-lte.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-responsive-lte.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/login-responsive.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-responsive.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/login-responsive.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-responsive.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/login-tec.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-tec.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/login-tec.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/login-tec.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/login.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/login.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/login.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/login.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/lte.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/lte.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/lte.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/lte.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/site-responsive.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/site-responsive.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/site-responsive.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/site-responsive.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/site.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/site.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/site.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/site.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/tasks.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/tasks.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/tasks.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/tasks.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/theme-responsive.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/theme-responsive.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/theme-responsive.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/theme-responsive.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/css/theme.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/css/theme.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/css/theme.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/css/theme.css diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/favicon.ico b/src/mvc/admin/Bootstrap.Admin/wwwroot/favicon.ico new file mode 100644 index 00000000..eb3bb590 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/favicon.ico differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/favicon.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/favicon.png new file mode 100644 index 00000000..05a4ed7f Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/favicon.png differ diff --git a/src/admin/Bootstrap.Admin/wwwroot/html/Healths-UI.html b/src/mvc/admin/Bootstrap.Admin/wwwroot/html/Healths-UI.html similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/html/Healths-UI.html rename to src/mvc/admin/Bootstrap.Admin/wwwroot/html/Healths-UI.html diff --git a/src/admin/Bootstrap.Admin/wwwroot/html/index.html b/src/mvc/admin/Bootstrap.Admin/wwwroot/html/index.html similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/html/index.html rename to src/mvc/admin/Bootstrap.Admin/wwwroot/html/index.html diff --git a/src/admin/Bootstrap.Admin/wwwroot/html/login1.html b/src/mvc/admin/Bootstrap.Admin/wwwroot/html/login1.html similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/html/login1.html rename to src/mvc/admin/Bootstrap.Admin/wwwroot/html/login1.html diff --git a/src/client/Bootstrap.Client/wwwroot/images/404_icon.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/404_icon.png similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/images/404_icon.png rename to src/mvc/admin/Bootstrap.Admin/wwwroot/images/404_icon.png diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/aliyun-default.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/aliyun-default.svg new file mode 100644 index 00000000..69fb8474 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/aliyun-default.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/banner4.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/banner4.jpg new file mode 100644 index 00000000..631668b5 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/banner4.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg.jpg new file mode 100644 index 00000000..5ca81d7b Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg.png new file mode 100644 index 00000000..f85ad144 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg.png differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg2.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg2.jpg new file mode 100644 index 00000000..802276b9 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg2.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg3.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg3.png new file mode 100644 index 00000000..44b4238e Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg3.png differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg4.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg4.jpg new file mode 100644 index 00000000..5d6863eb Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/bg4.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/blazor.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/blazor.png new file mode 100644 index 00000000..fb308a8e Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/blazor.png differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/blazor.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/blazor.svg new file mode 100644 index 00000000..b830e3a1 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/blazor.svg @@ -0,0 +1,12 @@ + + + + dark version + Created with Sketch. + + + + + + + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/cover-bg.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/cover-bg.jpg new file mode 100644 index 00000000..707fec6e Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/cover-bg.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/dingding.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/dingding.svg new file mode 100644 index 00000000..e582d0e3 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/dingding.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/downloadwindows_icon.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/downloadwindows_icon.svg new file mode 100644 index 00000000..ae04bd16 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/downloadwindows_icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/enterprise.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/enterprise.png new file mode 100644 index 00000000..ccf3b09d Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/enterprise.png differ diff --git a/src/client/Bootstrap.Client/wwwroot/images/error.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/error.png similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/images/error.png rename to src/mvc/admin/Bootstrap.Admin/wwwroot/images/error.png diff --git a/src/client/Bootstrap.Client/wwwroot/images/error_icon.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/error_icon.png similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/images/error_icon.png rename to src/mvc/admin/Bootstrap.Admin/wwwroot/images/error_icon.png diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/git.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/git.svg new file mode 100644 index 00000000..0d3f059e --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/git.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/gitee.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/gitee.svg new file mode 100644 index 00000000..89c18c31 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/gitee.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left-1.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left-1.png new file mode 100644 index 00000000..171999df Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left-1.png differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left-2.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left-2.png new file mode 100644 index 00000000..42cc4d26 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left-2.png differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left.png new file mode 100644 index 00000000..cbc9007c Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/left.png differ diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading-sm.gif b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/loading-sm.gif similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading-sm.gif rename to src/mvc/admin/Bootstrap.Admin/wwwroot/images/loading-sm.gif diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/lock-bg.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/lock-bg.jpg new file mode 100644 index 00000000..2faface0 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/lock-bg.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/login-background.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/login-background.jpg new file mode 100644 index 00000000..b96aded5 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/login-background.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo.jpg new file mode 100644 index 00000000..b58b81d2 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo1.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo1.jpg new file mode 100644 index 00000000..212a3941 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo1.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo2.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo2.jpg new file mode 100644 index 00000000..1a0abc80 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo2.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo3.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo3.jpg new file mode 100644 index 00000000..b593e9ce Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo3.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo4.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo4.jpg new file mode 100644 index 00000000..6983f884 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo4.jpg differ diff --git a/src/client/Bootstrap.Client/wwwroot/favicon.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo5.jpg similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/favicon.png rename to src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo5.jpg diff --git a/src/client/Bootstrap.Client/wwwroot/images/admin.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo6.jpg similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/images/admin.jpg rename to src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo6.jpg diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo7.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo7.png new file mode 100644 index 00000000..b318f5f1 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/logo7.png differ diff --git a/src/client/Bootstrap.Client/wwwroot/images/nav-expand.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/nav-expand.png similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/images/nav-expand.png rename to src/mvc/admin/Bootstrap.Admin/wwwroot/images/nav-expand.png diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/netcore.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/netcore.png new file mode 100644 index 00000000..d1bd381e Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/netcore.png differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/netcore2.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/netcore2.png new file mode 100644 index 00000000..d2e4912a Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/netcore2.png differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq-2.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq-2.svg new file mode 100644 index 00000000..c9e3ccbf --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq-2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq-3.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq-3.svg new file mode 100644 index 00000000..a5d049c2 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq-3.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq.svg new file mode 100644 index 00000000..5321ee17 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/qq.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/success.png b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/success.png new file mode 100644 index 00000000..145b5551 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/success.png differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/uploader/default.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/uploader/default.jpg new file mode 100644 index 00000000..cea70dbf Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/uploader/default.jpg differ diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weibo.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weibo.svg new file mode 100644 index 00000000..2270d39e --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weibo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weixin-2.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weixin-2.svg new file mode 100644 index 00000000..e3e2674f --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weixin-2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weixin.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weixin.svg new file mode 100644 index 00000000..50d46a7c --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/weixin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao-2.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao-2.svg new file mode 100644 index 00000000..61668659 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao-2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao-3.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao-3.svg new file mode 100644 index 00000000..0f937cb7 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao-3.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao.svg new file mode 100644 index 00000000..93b6d865 --- /dev/null +++ b/src/mvc/admin/Bootstrap.Admin/wwwroot/images/zhifubao.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/analyse.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/analyse.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/analyse.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/analyse.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/ba.blazor.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/ba.blazor.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/ba.blazor.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/ba.blazor.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/common-scripts.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/common-scripts.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/common-scripts.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/common-scripts.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/dicts.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/dicts.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/dicts.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/dicts.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/error.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/error.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/error.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/error.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/exceptions.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/exceptions.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/exceptions.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/exceptions.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/groups.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/groups.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/groups.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/groups.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/healths.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/healths.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/healths.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/healths.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/icon.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/icon.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/icon.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/icon.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/lock.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/lock.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/lock.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/lock.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/log.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/log.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/log.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/log.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/login.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/login.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/login.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/login.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/logins.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/logins.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/logins.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/logins.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/logs.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/logs.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/logs.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/logs.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/menus.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/menus.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/menus.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/menus.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/message.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/message.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/message.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/message.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/noti.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/noti.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/noti.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/noti.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/online.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/online.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/online.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/online.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/profiles.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/profiles.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/profiles.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/profiles.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/roles.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/roles.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/roles.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/roles.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/settings.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/settings.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/settings.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/settings.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/sql.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/sql.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/sql.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/sql.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/tasks.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/tasks.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/tasks.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/tasks.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/traces.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/traces.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/traces.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/traces.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/js/users.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/js/users.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/js/users.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/js/users.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-3-typeahead/bootstrap3-typeahead.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-3-typeahead/bootstrap3-typeahead.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-3-typeahead/bootstrap3-typeahead.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-3-typeahead/bootstrap3-typeahead.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-3-typeahead/bootstrap3-typeahead.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-3-typeahead/bootstrap3-typeahead.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-3-typeahead/bootstrap3-typeahead.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-3-typeahead/bootstrap3-typeahead.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/css/fileinput.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/css/fileinput.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/css/fileinput.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/css/fileinput.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/css/fileinput.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/css/fileinput.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/css/fileinput.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/css/fileinput.min.css diff --git a/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading-sm.gif b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading-sm.gif new file mode 100644 index 00000000..44e3b7a0 Binary files /dev/null and b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading-sm.gif differ diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading.gif b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading.gif similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading.gif rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/img/loading.gif diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/fileinput.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/fileinput.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/fileinput.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/fileinput.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/fileinput.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/fileinput.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/fileinput.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/fileinput.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.min.js.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.min.js.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.min.js.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/js/locales/zh.min.js.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/themes/fa/theme.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/themes/fa/theme.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/themes/fa/theme.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/themes/fa/theme.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/themes/fa/theme.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/themes/fa/theme.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/themes/fa/theme.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-fileinput/themes/fa/theme.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/bootstrap-table.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js.map old mode 100755 new mode 100644 similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap2-toggle.min.js.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap2-toggle.min.js.map old mode 100755 new mode 100644 similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap2-toggle.min.js.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/bootstrap-toggle/js/bootstrap2-toggle.min.js.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic0.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic0.jpg similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic0.jpg rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic0.jpg diff --git a/src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic1.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic1.jpg similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic1.jpg rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic1.jpg diff --git a/src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic2.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic2.jpg similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic2.jpg rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic2.jpg diff --git a/src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic3.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic3.jpg similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic3.jpg rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic3.jpg diff --git a/src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic4.jpg b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic4.jpg similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic4.jpg rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/images/Pic4.jpg diff --git a/src/client/Bootstrap.Client/wwwroot/lib/captcha/longbow.slidercaptcha.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/longbow.slidercaptcha.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/captcha/longbow.slidercaptcha.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/longbow.slidercaptcha.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/captcha/slidercaptcha.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/slidercaptcha.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/captcha/slidercaptcha.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/captcha/slidercaptcha.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/echart/echarts-all.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/echart/echarts-all.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/echart/echarts-all.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/echart/echarts-all.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/echart/echarts-all.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/echart/echarts-all.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/echart/echarts-all.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/echart/echarts-all.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.css.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.css.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.css.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.css.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/css/font-awesome.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/FontAwesome.otf b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/FontAwesome.otf similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/FontAwesome.otf rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/FontAwesome.otf diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.min.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.min.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.min.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/jquery/jquery.min.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/longbow-checkbox/longbow-checkbox.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow-checkbox/longbow-checkbox.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/longbow-checkbox/longbow-checkbox.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow-checkbox/longbow-checkbox.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/longbow-checkbox/longbow-checkbox.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow-checkbox/longbow-checkbox.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/longbow-checkbox/longbow-checkbox.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow-checkbox/longbow-checkbox.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/longbow-select/longbow-select.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow-select/longbow-select.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/longbow-select/longbow-select.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow-select/longbow-select.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/longbow-select/longbow-select.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow-select/longbow-select.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/longbow-select/longbow-select.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow-select/longbow-select.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.common.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.common.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.common.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.common.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.dataentity.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.dataentity.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.dataentity.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.dataentity.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.validate.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.validate.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.validate.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/longbow/longbow.validate.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nestable2/jquery.nestable.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/nprogress/nprogress.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/OverlayScrollbars.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/OverlayScrollbars.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/OverlayScrollbars.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/OverlayScrollbars.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/OverlayScrollbars.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/OverlayScrollbars.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/OverlayScrollbars.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/OverlayScrollbars.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.js.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.js.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.js.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.js.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.min.js.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.min.js.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.min.js.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/signalr/dist/browser/signalr.min.js.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/sweetalert/sweetalert2.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/tablexport/tableExport.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/tablexport/tableExport.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/tablexport/tableExport.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/tablexport/tableExport.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/tablexport/tableExport.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/tablexport/tableExport.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/tablexport/tableExport.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/tablexport/tableExport.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.js.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.js.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.js.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.js.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.min.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.min.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/toastr.js/toastr.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/treegrid/css/jquery.treegrid.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/treegrid/css/jquery.treegrid.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/treegrid/css/jquery.treegrid.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/treegrid/css/jquery.treegrid.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/treegrid/js/jquery.treegrid.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/treegrid/js/jquery.treegrid.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/treegrid/js/jquery.treegrid.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/treegrid/js/jquery.treegrid.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/treegrid/js/jquery.treegrid.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/treegrid/js/jquery.treegrid.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/treegrid/js/jquery.treegrid.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/treegrid/js/jquery.treegrid.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.css similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.css diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.css.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.css.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.css.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.css.map diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/bootstrap/bootstrap.min.css b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/bootstrap/bootstrap.min.css rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css diff --git a/src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/bootstrap/bootstrap.min.css.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css.map similarity index 100% rename from src/blazor/Bootstrap.Client.Blazor.WebAssembly/wwwroot/css/bootstrap/bootstrap.min.css.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js.map b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js.map similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js.map rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js.map diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/validate/jquery.validate.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/validate/jquery.validate.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/validate/jquery.validate.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/validate/jquery.validate.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/validate/jquery.validate.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/validate/jquery.validate.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/validate/jquery.validate.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/validate/jquery.validate.min.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/validate/localization/messages_zh.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/validate/localization/messages_zh.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/validate/localization/messages_zh.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/validate/localization/messages_zh.js diff --git a/src/admin/Bootstrap.Admin/wwwroot/lib/validate/localization/messages_zh.min.js b/src/mvc/admin/Bootstrap.Admin/wwwroot/lib/validate/localization/messages_zh.min.js similarity index 100% rename from src/admin/Bootstrap.Admin/wwwroot/lib/validate/localization/messages_zh.min.js rename to src/mvc/admin/Bootstrap.Admin/wwwroot/lib/validate/localization/messages_zh.min.js diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/App.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/App.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/App.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/App.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/AutoDB.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/AutoDB.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/AutoDB.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/AutoDB.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Bootstrap.DataAccess.MongoDB.csproj b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Bootstrap.DataAccess.MongoDB.csproj similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Bootstrap.DataAccess.MongoDB.csproj rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Bootstrap.DataAccess.MongoDB.csproj diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/DBLog.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/DBLog.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/DBLog.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/DBLog.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/DbManager.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/DbManager.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/DbManager.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/DbManager.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Dict.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Dict.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Dict.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Dict.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Exceptions.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Exceptions.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Exceptions.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Exceptions.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Group.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Group.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Group.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Group.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Log.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Log.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Log.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Log.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/LoginUser.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/LoginUser.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/LoginUser.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/LoginUser.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Menu.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Menu.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Menu.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Menu.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Message.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Message.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Message.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Message.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/RejectUser.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/RejectUser.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/RejectUser.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/RejectUser.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/ResetUser.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/ResetUser.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/ResetUser.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/ResetUser.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Role.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Role.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Role.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Role.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Task.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Task.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Task.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Task.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/Trace.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/Trace.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/Trace.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/Trace.cs diff --git a/src/admin/Bootstrap.DataAccess.MongoDB/User.cs b/src/mvc/admin/Bootstrap.DataAccess.MongoDB/User.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess.MongoDB/User.cs rename to src/mvc/admin/Bootstrap.DataAccess.MongoDB/User.cs diff --git a/src/admin/Bootstrap.DataAccess/App.cs b/src/mvc/admin/Bootstrap.DataAccess/App.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/App.cs rename to src/mvc/admin/Bootstrap.DataAccess/App.cs diff --git a/src/admin/Bootstrap.DataAccess/AutoDB.cs b/src/mvc/admin/Bootstrap.DataAccess/AutoDB.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/AutoDB.cs rename to src/mvc/admin/Bootstrap.DataAccess/AutoDB.cs diff --git a/src/admin/Bootstrap.DataAccess/Bootstrap.DataAccess.csproj b/src/mvc/admin/Bootstrap.DataAccess/Bootstrap.DataAccess.csproj similarity index 100% rename from src/admin/Bootstrap.DataAccess/Bootstrap.DataAccess.csproj rename to src/mvc/admin/Bootstrap.DataAccess/Bootstrap.DataAccess.csproj diff --git a/src/admin/Bootstrap.DataAccess/BootstrapDataAccessConventionMapper.cs b/src/mvc/admin/Bootstrap.DataAccess/BootstrapDataAccessConventionMapper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/BootstrapDataAccessConventionMapper.cs rename to src/mvc/admin/Bootstrap.DataAccess/BootstrapDataAccessConventionMapper.cs diff --git a/src/admin/Bootstrap.DataAccess/CacheCleanUtility.cs b/src/mvc/admin/Bootstrap.DataAccess/CacheCleanUtility.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/CacheCleanUtility.cs rename to src/mvc/admin/Bootstrap.DataAccess/CacheCleanUtility.cs diff --git a/src/admin/Bootstrap.DataAccess/DBLog.cs b/src/mvc/admin/Bootstrap.DataAccess/DBLog.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/DBLog.cs rename to src/mvc/admin/Bootstrap.DataAccess/DBLog.cs diff --git a/src/admin/Bootstrap.DataAccess/DBLogTask.cs b/src/mvc/admin/Bootstrap.DataAccess/DBLogTask.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/DBLogTask.cs rename to src/mvc/admin/Bootstrap.DataAccess/DBLogTask.cs diff --git a/src/admin/Bootstrap.DataAccess/DbContextManager.cs b/src/mvc/admin/Bootstrap.DataAccess/DbContextManager.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/DbContextManager.cs rename to src/mvc/admin/Bootstrap.DataAccess/DbContextManager.cs diff --git a/src/admin/Bootstrap.DataAccess/DbManager.cs b/src/mvc/admin/Bootstrap.DataAccess/DbManager.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/DbManager.cs rename to src/mvc/admin/Bootstrap.DataAccess/DbManager.cs diff --git a/src/admin/Bootstrap.DataAccess/Dict.cs b/src/mvc/admin/Bootstrap.DataAccess/Dict.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Dict.cs rename to src/mvc/admin/Bootstrap.DataAccess/Dict.cs diff --git a/src/admin/Bootstrap.DataAccess/Exceptions.cs b/src/mvc/admin/Bootstrap.DataAccess/Exceptions.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Exceptions.cs rename to src/mvc/admin/Bootstrap.DataAccess/Exceptions.cs diff --git a/src/admin/Bootstrap.DataAccess/Group.cs b/src/mvc/admin/Bootstrap.DataAccess/Group.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Group.cs rename to src/mvc/admin/Bootstrap.DataAccess/Group.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/AppHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/AppHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/AppHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/AppHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/AutoDbHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/AutoDbHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/AutoDbHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/AutoDbHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/DictHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/DictHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/DictHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/DictHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/ExceptionsHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/ExceptionsHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/ExceptionsHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/ExceptionsHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/GroupHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/GroupHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/GroupHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/GroupHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/LogHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/LogHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/LogHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/LogHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/LoginHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/LoginHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/LoginHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/LoginHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/MenuHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/MenuHelper.cs similarity index 98% rename from src/admin/Bootstrap.DataAccess/Helper/MenuHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/MenuHelper.cs index 968c0245..d841131b 100644 --- a/src/admin/Bootstrap.DataAccess/Helper/MenuHelper.cs +++ b/src/mvc/admin/Bootstrap.DataAccess/Helper/MenuHelper.cs @@ -136,7 +136,7 @@ namespace Bootstrap.DataAccess /// public static IEnumerable RetrieveSystemMenus(string userName, string? activeUrl = null) { - if (string.IsNullOrEmpty(userName)) return new BootstrapMenu[0]; + if (string.IsNullOrEmpty(userName)) return Array.Empty(); var menus = RetrieveAllMenus(userName).Where(m => m.Category == "0" && m.IsResource == 0); return DbHelper.CascadeMenus(menus, activeUrl); @@ -158,7 +158,7 @@ namespace Bootstrap.DataAccess /// /// /// - public static IEnumerable RetrieveAllMenus(string? userName) => string.IsNullOrEmpty(userName) ? new BootstrapMenu[0] : CacheManager.GetOrAdd($"{RetrieveMenusAll}-{userName}", key => DbContextManager.Create()?.RetrieveAllMenus(userName), RetrieveMenusAll) ?? new BootstrapMenu[0]; + public static IEnumerable RetrieveAllMenus(string? userName) => string.IsNullOrEmpty(userName) ? new BootstrapMenu[0] : CacheManager.GetOrAdd($"{RetrieveMenusAll}-{userName}", key => DbContextManager.Create()?.RetrieveAllMenus(userName), RetrieveMenusAll) ?? Array.Empty(); /// /// 通过当前用户名与指定菜单路径获取此菜单下所有授权按钮集合 (userName, url, auths) => bool diff --git a/src/admin/Bootstrap.DataAccess/Helper/MessageHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/MessageHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/MessageHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/MessageHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/OAuthHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/OAuthHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/OAuthHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/OAuthHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/QueryAppOption.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/QueryAppOption.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/QueryAppOption.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/QueryAppOption.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/ResetUserHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/ResetUserHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/ResetUserHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/ResetUserHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/RoleHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/RoleHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/RoleHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/RoleHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/TaskHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/TaskHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/TaskHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/TaskHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/TraceHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/TraceHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/TraceHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/TraceHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Helper/UserHelper.cs b/src/mvc/admin/Bootstrap.DataAccess/Helper/UserHelper.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Helper/UserHelper.cs rename to src/mvc/admin/Bootstrap.DataAccess/Helper/UserHelper.cs diff --git a/src/admin/Bootstrap.DataAccess/Log.cs b/src/mvc/admin/Bootstrap.DataAccess/Log.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Log.cs rename to src/mvc/admin/Bootstrap.DataAccess/Log.cs diff --git a/src/admin/Bootstrap.DataAccess/LoginUser.cs b/src/mvc/admin/Bootstrap.DataAccess/LoginUser.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/LoginUser.cs rename to src/mvc/admin/Bootstrap.DataAccess/LoginUser.cs diff --git a/src/admin/Bootstrap.DataAccess/Menu.cs b/src/mvc/admin/Bootstrap.DataAccess/Menu.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Menu.cs rename to src/mvc/admin/Bootstrap.DataAccess/Menu.cs diff --git a/src/admin/Bootstrap.DataAccess/Message.cs b/src/mvc/admin/Bootstrap.DataAccess/Message.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Message.cs rename to src/mvc/admin/Bootstrap.DataAccess/Message.cs diff --git a/src/admin/Bootstrap.DataAccess/MessageBody.cs b/src/mvc/admin/Bootstrap.DataAccess/MessageBody.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/MessageBody.cs rename to src/mvc/admin/Bootstrap.DataAccess/MessageBody.cs diff --git a/src/admin/Bootstrap.DataAccess/ResetUsers.cs b/src/mvc/admin/Bootstrap.DataAccess/ResetUsers.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/ResetUsers.cs rename to src/mvc/admin/Bootstrap.DataAccess/ResetUsers.cs diff --git a/src/admin/Bootstrap.DataAccess/Role.cs b/src/mvc/admin/Bootstrap.DataAccess/Role.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Role.cs rename to src/mvc/admin/Bootstrap.DataAccess/Role.cs diff --git a/src/admin/Bootstrap.DataAccess/Task.cs b/src/mvc/admin/Bootstrap.DataAccess/Task.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Task.cs rename to src/mvc/admin/Bootstrap.DataAccess/Task.cs diff --git a/src/admin/Bootstrap.DataAccess/Trace.cs b/src/mvc/admin/Bootstrap.DataAccess/Trace.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/Trace.cs rename to src/mvc/admin/Bootstrap.DataAccess/Trace.cs diff --git a/src/admin/Bootstrap.DataAccess/User.cs b/src/mvc/admin/Bootstrap.DataAccess/User.cs similarity index 100% rename from src/admin/Bootstrap.DataAccess/User.cs rename to src/mvc/admin/Bootstrap.DataAccess/User.cs diff --git a/src/admin/keys/Longbow.lic b/src/mvc/admin/keys/Longbow.lic similarity index 100% rename from src/admin/keys/Longbow.lic rename to src/mvc/admin/keys/Longbow.lic diff --git a/src/admin/keys/appsettings.Production.json b/src/mvc/admin/keys/appsettings.Production.json similarity index 100% rename from src/admin/keys/appsettings.Production.json rename to src/mvc/admin/keys/appsettings.Production.json diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/App.cs b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/App.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/App.cs rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/App.cs diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/Bootstrap.Client.DataAccess.MongoDB.csproj b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Bootstrap.Client.DataAccess.MongoDB.csproj similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/Bootstrap.Client.DataAccess.MongoDB.csproj rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Bootstrap.Client.DataAccess.MongoDB.csproj diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/DbManager.cs b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/DbManager.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/DbManager.cs rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/DbManager.cs diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/Dict.cs b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Dict.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/Dict.cs rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Dict.cs diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/Group.cs b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Group.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/Group.cs rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Group.cs diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/Helper/RoleHelper.cs b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Helper/RoleHelper.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/Helper/RoleHelper.cs rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Helper/RoleHelper.cs diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/Menu.cs b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Menu.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/Menu.cs rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Menu.cs diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/Role.cs b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Role.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/Role.cs rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/Role.cs diff --git a/src/client/Bootstrap.Client.DataAccess.MongoDB/User.cs b/src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/User.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess.MongoDB/User.cs rename to src/mvc/client/Bootstrap.Client.DataAccess.MongoDB/User.cs diff --git a/src/client/Bootstrap.Client.DataAccess/App.cs b/src/mvc/client/Bootstrap.Client.DataAccess/App.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/App.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/App.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Bootstrap.Client.DataAccess.csproj b/src/mvc/client/Bootstrap.Client.DataAccess/Bootstrap.Client.DataAccess.csproj similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Bootstrap.Client.DataAccess.csproj rename to src/mvc/client/Bootstrap.Client.DataAccess/Bootstrap.Client.DataAccess.csproj diff --git a/src/client/Bootstrap.Client.DataAccess/DbManager.cs b/src/mvc/client/Bootstrap.Client.DataAccess/DbManager.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/DbManager.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/DbManager.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Dict.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Dict.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Dict.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Dict.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Dummy.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Dummy.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Dummy.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Dummy.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Helper/AppHelper.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Helper/AppHelper.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Helper/AppHelper.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Helper/AppHelper.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Helper/DictHelper.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Helper/DictHelper.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Helper/DictHelper.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Helper/DictHelper.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Helper/DummyHelper.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Helper/DummyHelper.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Helper/DummyHelper.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Helper/DummyHelper.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Helper/MenuHelper.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Helper/MenuHelper.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Helper/MenuHelper.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Helper/MenuHelper.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Helper/RoleHelper.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Helper/RoleHelper.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Helper/RoleHelper.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Helper/RoleHelper.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Helper/TraceHelper.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Helper/TraceHelper.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Helper/TraceHelper.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Helper/TraceHelper.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Helper/TraceHttpClient.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Helper/TraceHttpClient.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Helper/TraceHttpClient.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Helper/TraceHttpClient.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Helper/UserHelper.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Helper/UserHelper.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Helper/UserHelper.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Helper/UserHelper.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Menu.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Menu.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Menu.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Menu.cs diff --git a/src/client/Bootstrap.Client.DataAccess/Role.cs b/src/mvc/client/Bootstrap.Client.DataAccess/Role.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/Role.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/Role.cs diff --git a/src/client/Bootstrap.Client.DataAccess/User.cs b/src/mvc/client/Bootstrap.Client.DataAccess/User.cs similarity index 100% rename from src/client/Bootstrap.Client.DataAccess/User.cs rename to src/mvc/client/Bootstrap.Client.DataAccess/User.cs diff --git a/src/client/Bootstrap.Client/Bootstrap.Client.csproj b/src/mvc/client/Bootstrap.Client/Bootstrap.Client.csproj similarity index 100% rename from src/client/Bootstrap.Client/Bootstrap.Client.csproj rename to src/mvc/client/Bootstrap.Client/Bootstrap.Client.csproj diff --git a/src/client/Bootstrap.Client/Client.db b/src/mvc/client/Bootstrap.Client/Client.db similarity index 100% rename from src/client/Bootstrap.Client/Client.db rename to src/mvc/client/Bootstrap.Client/Client.db diff --git a/src/client/Bootstrap.Client/Controllers/Api/AdminController.cs b/src/mvc/client/Bootstrap.Client/Controllers/Api/AdminController.cs similarity index 100% rename from src/client/Bootstrap.Client/Controllers/Api/AdminController.cs rename to src/mvc/client/Bootstrap.Client/Controllers/Api/AdminController.cs diff --git a/src/client/Bootstrap.Client/Controllers/Api/CaptchaController.cs b/src/mvc/client/Bootstrap.Client/Controllers/Api/CaptchaController.cs similarity index 100% rename from src/client/Bootstrap.Client/Controllers/Api/CaptchaController.cs rename to src/mvc/client/Bootstrap.Client/Controllers/Api/CaptchaController.cs diff --git a/src/client/Bootstrap.Client/Controllers/Api/DummyController.cs b/src/mvc/client/Bootstrap.Client/Controllers/Api/DummyController.cs similarity index 100% rename from src/client/Bootstrap.Client/Controllers/Api/DummyController.cs rename to src/mvc/client/Bootstrap.Client/Controllers/Api/DummyController.cs diff --git a/src/client/Bootstrap.Client/Controllers/Api/EncrptyController.cs b/src/mvc/client/Bootstrap.Client/Controllers/Api/EncrptyController.cs similarity index 100% rename from src/client/Bootstrap.Client/Controllers/Api/EncrptyController.cs rename to src/mvc/client/Bootstrap.Client/Controllers/Api/EncrptyController.cs diff --git a/src/client/Bootstrap.Client/Controllers/Api/GitController.cs b/src/mvc/client/Bootstrap.Client/Controllers/Api/GitController.cs similarity index 100% rename from src/client/Bootstrap.Client/Controllers/Api/GitController.cs rename to src/mvc/client/Bootstrap.Client/Controllers/Api/GitController.cs diff --git a/src/client/Bootstrap.Client/Controllers/Api/InterfaceController.cs b/src/mvc/client/Bootstrap.Client/Controllers/Api/InterfaceController.cs similarity index 100% rename from src/client/Bootstrap.Client/Controllers/Api/InterfaceController.cs rename to src/mvc/client/Bootstrap.Client/Controllers/Api/InterfaceController.cs diff --git a/src/client/Bootstrap.Client/Controllers/HomeController.cs b/src/mvc/client/Bootstrap.Client/Controllers/HomeController.cs similarity index 100% rename from src/client/Bootstrap.Client/Controllers/HomeController.cs rename to src/mvc/client/Bootstrap.Client/Controllers/HomeController.cs diff --git a/src/client/Bootstrap.Client/Controllers/ToolsController.cs b/src/mvc/client/Bootstrap.Client/Controllers/ToolsController.cs similarity index 100% rename from src/client/Bootstrap.Client/Controllers/ToolsController.cs rename to src/mvc/client/Bootstrap.Client/Controllers/ToolsController.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/DefaultSendMail.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/DefaultSendMail.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/DefaultSendMail.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/DefaultSendMail.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/ISendMail.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/ISendMail.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/ISendMail.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/ISendMail.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/MessageFormat.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/MessageFormat.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/MessageFormat.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/MessageFormat.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/MessageFormatExtensions.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/MessageFormatExtensions.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/MessageFormatExtensions.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/MessageFormatExtensions.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/SendMailServicesCollectionExtensions.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/SendMailServicesCollectionExtensions.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/SendMailServicesCollectionExtensions.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/SendMailServicesCollectionExtensions.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/SmtpConfigureOptions.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/SmtpConfigureOptions.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/SmtpConfigureOptions.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/SmtpConfigureOptions.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/SmtpExtensions.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/SmtpExtensions.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/SmtpExtensions.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/SmtpExtensions.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/SmtpMessage.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/SmtpMessage.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/SmtpMessage.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/SmtpMessage.cs diff --git a/src/client/Bootstrap.Client/Extensions/SendMail/SmtpOption.cs b/src/mvc/client/Bootstrap.Client/Extensions/SendMail/SmtpOption.cs similarity index 100% rename from src/client/Bootstrap.Client/Extensions/SendMail/SmtpOption.cs rename to src/mvc/client/Bootstrap.Client/Extensions/SendMail/SmtpOption.cs diff --git a/src/client/Bootstrap.Client/HttpClientExtensions.cs b/src/mvc/client/Bootstrap.Client/HttpClientExtensions.cs similarity index 100% rename from src/client/Bootstrap.Client/HttpClientExtensions.cs rename to src/mvc/client/Bootstrap.Client/HttpClientExtensions.cs diff --git a/src/client/Bootstrap.Client/Models/EncrptyModel.cs b/src/mvc/client/Bootstrap.Client/Models/EncrptyModel.cs similarity index 100% rename from src/client/Bootstrap.Client/Models/EncrptyModel.cs rename to src/mvc/client/Bootstrap.Client/Models/EncrptyModel.cs diff --git a/src/client/Bootstrap.Client/Models/HeaderBarModel.cs b/src/mvc/client/Bootstrap.Client/Models/HeaderBarModel.cs similarity index 100% rename from src/client/Bootstrap.Client/Models/HeaderBarModel.cs rename to src/mvc/client/Bootstrap.Client/Models/HeaderBarModel.cs diff --git a/src/client/Bootstrap.Client/Models/MailModel.cs b/src/mvc/client/Bootstrap.Client/Models/MailModel.cs similarity index 100% rename from src/client/Bootstrap.Client/Models/MailModel.cs rename to src/mvc/client/Bootstrap.Client/Models/MailModel.cs diff --git a/src/client/Bootstrap.Client/Models/ModelBase.cs b/src/mvc/client/Bootstrap.Client/Models/ModelBase.cs similarity index 100% rename from src/client/Bootstrap.Client/Models/ModelBase.cs rename to src/mvc/client/Bootstrap.Client/Models/ModelBase.cs diff --git a/src/client/Bootstrap.Client/Models/NavigatorBarModel.cs b/src/mvc/client/Bootstrap.Client/Models/NavigatorBarModel.cs similarity index 100% rename from src/client/Bootstrap.Client/Models/NavigatorBarModel.cs rename to src/mvc/client/Bootstrap.Client/Models/NavigatorBarModel.cs diff --git a/src/client/Bootstrap.Client/Models/SQLModel.cs b/src/mvc/client/Bootstrap.Client/Models/SQLModel.cs similarity index 100% rename from src/client/Bootstrap.Client/Models/SQLModel.cs rename to src/mvc/client/Bootstrap.Client/Models/SQLModel.cs diff --git a/src/client/Bootstrap.Client/Program.cs b/src/mvc/client/Bootstrap.Client/Program.cs similarity index 100% rename from src/client/Bootstrap.Client/Program.cs rename to src/mvc/client/Bootstrap.Client/Program.cs diff --git a/src/client/Bootstrap.Client/Properties/launchSettings.json b/src/mvc/client/Bootstrap.Client/Properties/launchSettings.json similarity index 100% rename from src/client/Bootstrap.Client/Properties/launchSettings.json rename to src/mvc/client/Bootstrap.Client/Properties/launchSettings.json diff --git a/src/client/Bootstrap.Client/Query/QueryDummyOption.cs b/src/mvc/client/Bootstrap.Client/Query/QueryDummyOption.cs similarity index 100% rename from src/client/Bootstrap.Client/Query/QueryDummyOption.cs rename to src/mvc/client/Bootstrap.Client/Query/QueryDummyOption.cs diff --git a/src/client/Bootstrap.Client/Startup.cs b/src/mvc/client/Bootstrap.Client/Startup.cs similarity index 100% rename from src/client/Bootstrap.Client/Startup.cs rename to src/mvc/client/Bootstrap.Client/Startup.cs diff --git a/src/client/Bootstrap.Client/Tasks/AppVeyorHttpClient.cs b/src/mvc/client/Bootstrap.Client/Tasks/AppVeyorHttpClient.cs similarity index 100% rename from src/client/Bootstrap.Client/Tasks/AppVeyorHttpClient.cs rename to src/mvc/client/Bootstrap.Client/Tasks/AppVeyorHttpClient.cs diff --git a/src/client/Bootstrap.Client/Tasks/GiteePushBody.cs b/src/mvc/client/Bootstrap.Client/Tasks/GiteePushBody.cs similarity index 100% rename from src/client/Bootstrap.Client/Tasks/GiteePushBody.cs rename to src/mvc/client/Bootstrap.Client/Tasks/GiteePushBody.cs diff --git a/src/client/Bootstrap.Client/Views/Home/About.cshtml b/src/mvc/client/Bootstrap.Client/Views/Home/About.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Home/About.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Home/About.cshtml diff --git a/src/client/Bootstrap.Client/Views/Home/Dummy.cshtml b/src/mvc/client/Bootstrap.Client/Views/Home/Dummy.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Home/Dummy.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Home/Dummy.cshtml diff --git a/src/client/Bootstrap.Client/Views/Home/Index.cshtml b/src/mvc/client/Bootstrap.Client/Views/Home/Index.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Home/Index.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Home/Index.cshtml diff --git a/src/client/Bootstrap.Client/Views/Home/Table.cshtml b/src/mvc/client/Bootstrap.Client/Views/Home/Table.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Home/Table.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Home/Table.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/Footer.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/Footer.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/Footer.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/Footer.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/Header.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/Header.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/Header.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/Header.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/Menu.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/Menu.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/Menu.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/Menu.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/Navigator.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/Navigator.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/Navigator.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/Navigator.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/SubNavItem.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/SubNavItem.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/SubNavItem.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/SubNavItem.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/SubNavigation.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/SubNavigation.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/SubNavigation.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/SubNavigation.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/_Default.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/_Default.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/_Default.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/_Default.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/_Layout.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/_Layout.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/_Layout.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/_Layout.cshtml diff --git a/src/client/Bootstrap.Client/Views/Shared/_Root.cshtml b/src/mvc/client/Bootstrap.Client/Views/Shared/_Root.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/Shared/_Root.cshtml rename to src/mvc/client/Bootstrap.Client/Views/Shared/_Root.cshtml diff --git a/src/client/Bootstrap.Client/Views/_ViewImports.cshtml b/src/mvc/client/Bootstrap.Client/Views/_ViewImports.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/_ViewImports.cshtml rename to src/mvc/client/Bootstrap.Client/Views/_ViewImports.cshtml diff --git a/src/client/Bootstrap.Client/Views/_ViewStart.cshtml b/src/mvc/client/Bootstrap.Client/Views/_ViewStart.cshtml similarity index 100% rename from src/client/Bootstrap.Client/Views/_ViewStart.cshtml rename to src/mvc/client/Bootstrap.Client/Views/_ViewStart.cshtml diff --git a/src/client/Bootstrap.Client/appsettings.Development.json b/src/mvc/client/Bootstrap.Client/appsettings.Development.json similarity index 100% rename from src/client/Bootstrap.Client/appsettings.Development.json rename to src/mvc/client/Bootstrap.Client/appsettings.Development.json diff --git a/src/client/Bootstrap.Client/appsettings.json b/src/mvc/client/Bootstrap.Client/appsettings.json similarity index 100% rename from src/client/Bootstrap.Client/appsettings.json rename to src/mvc/client/Bootstrap.Client/appsettings.json diff --git a/src/client/Bootstrap.Client/libman.json b/src/mvc/client/Bootstrap.Client/libman.json similarity index 100% rename from src/client/Bootstrap.Client/libman.json rename to src/mvc/client/Bootstrap.Client/libman.json diff --git a/src/client/Bootstrap.Client/wwwroot/browser/readme.txt b/src/mvc/client/Bootstrap.Client/wwwroot/browser/readme.txt similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/browser/readme.txt rename to src/mvc/client/Bootstrap.Client/wwwroot/browser/readme.txt diff --git a/src/client/Bootstrap.Client/wwwroot/css/IE8.css b/src/mvc/client/Bootstrap.Client/wwwroot/css/IE8.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/css/IE8.css rename to src/mvc/client/Bootstrap.Client/wwwroot/css/IE8.css diff --git a/src/client/Bootstrap.Client/wwwroot/css/black.css b/src/mvc/client/Bootstrap.Client/wwwroot/css/black.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/css/black.css rename to src/mvc/client/Bootstrap.Client/wwwroot/css/black.css diff --git a/src/client/Bootstrap.Client/wwwroot/css/blue.css b/src/mvc/client/Bootstrap.Client/wwwroot/css/blue.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/css/blue.css rename to src/mvc/client/Bootstrap.Client/wwwroot/css/blue.css diff --git a/src/client/Bootstrap.Client/wwwroot/css/lte.css b/src/mvc/client/Bootstrap.Client/wwwroot/css/lte.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/css/lte.css rename to src/mvc/client/Bootstrap.Client/wwwroot/css/lte.css diff --git a/src/client/Bootstrap.Client/wwwroot/css/site-responsive.css b/src/mvc/client/Bootstrap.Client/wwwroot/css/site-responsive.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/css/site-responsive.css rename to src/mvc/client/Bootstrap.Client/wwwroot/css/site-responsive.css diff --git a/src/client/Bootstrap.Client/wwwroot/css/site.css b/src/mvc/client/Bootstrap.Client/wwwroot/css/site.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/css/site.css rename to src/mvc/client/Bootstrap.Client/wwwroot/css/site.css diff --git a/src/client/Bootstrap.Client/wwwroot/css/theme-responsive.css b/src/mvc/client/Bootstrap.Client/wwwroot/css/theme-responsive.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/css/theme-responsive.css rename to src/mvc/client/Bootstrap.Client/wwwroot/css/theme-responsive.css diff --git a/src/client/Bootstrap.Client/wwwroot/css/theme.css b/src/mvc/client/Bootstrap.Client/wwwroot/css/theme.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/css/theme.css rename to src/mvc/client/Bootstrap.Client/wwwroot/css/theme.css diff --git a/src/client/Bootstrap.Client/wwwroot/favicon.ico b/src/mvc/client/Bootstrap.Client/wwwroot/favicon.ico similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/favicon.ico rename to src/mvc/client/Bootstrap.Client/wwwroot/favicon.ico diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/favicon.png b/src/mvc/client/Bootstrap.Client/wwwroot/favicon.png new file mode 100644 index 00000000..cd4160c8 Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/favicon.png differ diff --git a/src/client/Bootstrap.Client/wwwroot/html/healths.html b/src/mvc/client/Bootstrap.Client/wwwroot/html/healths.html similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/html/healths.html rename to src/mvc/client/Bootstrap.Client/wwwroot/html/healths.html diff --git a/src/client/Bootstrap.Client/wwwroot/html/item.html b/src/mvc/client/Bootstrap.Client/wwwroot/html/item.html similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/html/item.html rename to src/mvc/client/Bootstrap.Client/wwwroot/html/item.html diff --git a/src/client/Bootstrap.Client/wwwroot/html/view.html b/src/mvc/client/Bootstrap.Client/wwwroot/html/view.html similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/html/view.html rename to src/mvc/client/Bootstrap.Client/wwwroot/html/view.html diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/images/404_icon.png b/src/mvc/client/Bootstrap.Client/wwwroot/images/404_icon.png new file mode 100644 index 00000000..e4576d2c Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/images/404_icon.png differ diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/images/admin.jpg b/src/mvc/client/Bootstrap.Client/wwwroot/images/admin.jpg new file mode 100644 index 00000000..cea70dbf Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/images/admin.jpg differ diff --git a/src/client/Bootstrap.Client/wwwroot/images/bg4.png b/src/mvc/client/Bootstrap.Client/wwwroot/images/bg4.png similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/images/bg4.png rename to src/mvc/client/Bootstrap.Client/wwwroot/images/bg4.png diff --git a/src/client/Bootstrap.Client/wwwroot/images/bird.png b/src/mvc/client/Bootstrap.Client/wwwroot/images/bird.png similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/images/bird.png rename to src/mvc/client/Bootstrap.Client/wwwroot/images/bird.png diff --git a/src/client/Bootstrap.Client/wwwroot/images/ccflow.png b/src/mvc/client/Bootstrap.Client/wwwroot/images/ccflow.png similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/images/ccflow.png rename to src/mvc/client/Bootstrap.Client/wwwroot/images/ccflow.png diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/images/error.png b/src/mvc/client/Bootstrap.Client/wwwroot/images/error.png new file mode 100644 index 00000000..427f899c Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/images/error.png differ diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/images/error_icon.png b/src/mvc/client/Bootstrap.Client/wwwroot/images/error_icon.png new file mode 100644 index 00000000..195757c4 Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/images/error_icon.png differ diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/images/nav-expand.png b/src/mvc/client/Bootstrap.Client/wwwroot/images/nav-expand.png new file mode 100644 index 00000000..1007d255 Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/images/nav-expand.png differ diff --git a/src/client/Bootstrap.Client/wwwroot/js/common-scripts.js b/src/mvc/client/Bootstrap.Client/wwwroot/js/common-scripts.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/js/common-scripts.js rename to src/mvc/client/Bootstrap.Client/wwwroot/js/common-scripts.js diff --git a/src/client/Bootstrap.Client/wwwroot/js/dummy.js b/src/mvc/client/Bootstrap.Client/wwwroot/js/dummy.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/js/dummy.js rename to src/mvc/client/Bootstrap.Client/wwwroot/js/dummy.js diff --git a/src/client/Bootstrap.Client/wwwroot/js/encrpty.js b/src/mvc/client/Bootstrap.Client/wwwroot/js/encrpty.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/js/encrpty.js rename to src/mvc/client/Bootstrap.Client/wwwroot/js/encrpty.js diff --git a/src/client/Bootstrap.Client/wwwroot/js/index.js b/src/mvc/client/Bootstrap.Client/wwwroot/js/index.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/js/index.js rename to src/mvc/client/Bootstrap.Client/wwwroot/js/index.js diff --git a/src/client/Bootstrap.Client/wwwroot/js/table.js b/src/mvc/client/Bootstrap.Client/wwwroot/js/table.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/js/table.js rename to src/mvc/client/Bootstrap.Client/wwwroot/js/table.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.min.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.min.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.min.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.min.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/bootstrap-table.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/export/bootstrap-table-export.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/extensions/treegrid/bootstrap-table-treegrid.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-table/locale/bootstrap-table-zh-CN.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.min.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.min.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.min.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/css/bootstrap-toggle.min.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/bootstrap-toggle/js/bootstrap-toggle.min.js diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic0.jpg b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic0.jpg new file mode 100644 index 00000000..ccfbedd1 Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic0.jpg differ diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic1.jpg b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic1.jpg new file mode 100644 index 00000000..689cc20c Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic1.jpg differ diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic2.jpg b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic2.jpg new file mode 100644 index 00000000..6ec84255 Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic2.jpg differ diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic3.jpg b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic3.jpg new file mode 100644 index 00000000..d1d1553d Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic3.jpg differ diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic4.jpg b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic4.jpg new file mode 100644 index 00000000..d718c2bb Binary files /dev/null and b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/images/Pic4.jpg differ diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/longbow.slidercaptcha.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/longbow.slidercaptcha.js new file mode 100644 index 00000000..45297020 --- /dev/null +++ b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/longbow.slidercaptcha.js @@ -0,0 +1,322 @@ +(function ($) { + 'use strict'; + + var SliderCaptcha = function (element, options) { + this.$element = $(element); + this.options = $.extend({}, SliderCaptcha.DEFAULTS, options); + this.$element.css({ 'position': 'relative', 'width': this.options.width + 'px', 'margin': '0 auto' }); + this.init(); + }; + + SliderCaptcha.VERSION = '1.0'; + SliderCaptcha.Author = 'argo@163.com'; + SliderCaptcha.DEFAULTS = { + width: 280, // canvas宽度 + height: 155, // canvas高度 + PI: Math.PI, + sliderL: 42, // 滑块边长 + sliderR: 9, // 滑块半径 + offset: 5, // 容错偏差 + loadingText: '正在加载中...', + failedText: '再试一次', + barText: '向右滑动填充拼图', + repeatIcon: 'fa fa-repeat', + maxLoadCount: 3, + localImages: function () { + return 'images/Pic' + Math.round(Math.random() * 4) + '.jpg'; + }, + verify: function (arr, url) { + var ret = false; + $.ajax({ + url: url, + data: JSON.stringify(arr), + async: false, + cache: false, + type: 'POST', + contentType: 'application/json', + dataType: 'json', + success: function (result) { + ret = result; + } + }); + return ret; + }, + remoteUrl: null + }; + + function Plugin(option) { + return this.each(function () { + var $this = $(this); + var data = $this.data('lgb.SliderCaptcha'); + var options = typeof option === 'object' && option; + + if (data && !/reset/.test(option)) return; + if (!data) $this.data('lgb.SliderCaptcha', data = new SliderCaptcha(this, options)); + if (typeof option === 'string') data[option](); + }); + } + + $.fn.sliderCaptcha = Plugin; + $.fn.sliderCaptcha.Constructor = SliderCaptcha; + + var _proto = SliderCaptcha.prototype; + _proto.init = function () { + this.initDOM(); + this.initImg(); + this.bindEvents(); + }; + + _proto.initDOM = function () { + var createElement = function (tagName, className) { + var elment = document.createElement(tagName); + elment.className = className; + return elment; + }; + + var createCanvas = function (width, height) { + var canvas = document.createElement('canvas'); + canvas.width = width; + canvas.height = height; + return canvas; + }; + + var canvas = createCanvas(this.options.width - 2, this.options.height); // 画布 + var block = canvas.cloneNode(true); // 滑块 + var sliderContainer = createElement('div', 'sliderContainer'); + var refreshIcon = createElement('i', 'refreshIcon ' + this.options.repeatIcon); + var sliderMask = createElement('div', 'sliderMask'); + var sliderbg = createElement('div', 'sliderbg'); + var slider = createElement('div', 'slider'); + var sliderIcon = createElement('i', 'fa fa-arrow-right sliderIcon'); + var text = createElement('span', 'sliderText'); + + block.className = 'block'; + text.innerHTML = this.options.barText; + + var el = this.$element; + el.append($(canvas)); + el.append($(refreshIcon)); + el.append($(block)); + slider.appendChild(sliderIcon); + sliderMask.appendChild(slider); + sliderContainer.appendChild(sliderbg); + sliderContainer.appendChild(sliderMask); + sliderContainer.appendChild(text); + el.append($(sliderContainer)); + + var _canvas = { + canvas: canvas, + block: block, + sliderContainer: $(sliderContainer), + refreshIcon: refreshIcon, + slider: slider, + sliderMask: sliderMask, + sliderIcon: sliderIcon, + text: $(text), + canvasCtx: canvas.getContext('2d'), + blockCtx: block.getContext('2d') + }; + + if ($.isFunction(Object.assign)) { + Object.assign(this, _canvas); + } + else { + $.extend(this, _canvas); + } + }; + + _proto.initImg = function () { + var that = this; + var isIE = window.navigator.userAgent.indexOf('Trident') > -1; + var L = this.options.sliderL + this.options.sliderR * 2 + 3; // 滑块实际边长 + var drawImg = function (ctx, operation) { + var l = that.options.sliderL; + var r = that.options.sliderR; + var PI = that.options.PI; + var x = that.x; + var y = that.y; + ctx.beginPath(); + ctx.moveTo(x, y); + ctx.arc(x + l / 2, y - r + 2, r, 0.72 * PI, 2.26 * PI); + ctx.lineTo(x + l, y); + ctx.arc(x + l + r - 2, y + l / 2, r, 1.21 * PI, 2.78 * PI); + ctx.lineTo(x + l, y + l); + ctx.lineTo(x, y + l); + ctx.arc(x + r - 2, y + l / 2, r + 0.4, 2.76 * PI, 1.24 * PI, true); + ctx.lineTo(x, y); + ctx.lineWidth = 2; + ctx.fillStyle = 'rgba(255, 255, 255, 0.7)'; + ctx.strokeStyle = 'rgba(255, 255, 255, 0.7)'; + ctx.stroke(); + ctx[operation](); + ctx.globalCompositeOperation = isIE ? 'xor' : 'destination-over'; + }; + + var getRandomNumberByRange = function (start, end) { + return Math.round(Math.random() * (end - start) + start); + }; + var img = new Image(); + img.crossOrigin = "Anonymous"; + var loadCount = 0; + img.onload = function () { + // 随机创建滑块的位置 + that.x = getRandomNumberByRange(L + 10, that.options.width - (L + 10)); + that.y = getRandomNumberByRange(10 + that.options.sliderR * 2, that.options.height - (L + 10)); + drawImg(that.canvasCtx, 'fill'); + drawImg(that.blockCtx, 'clip'); + + that.canvasCtx.drawImage(img, 0, 0, that.options.width - 2, that.options.height); + that.blockCtx.drawImage(img, 0, 0, that.options.width - 2, that.options.height); + var y = that.y - that.options.sliderR * 2 - 1; + var ImageData = that.blockCtx.getImageData(that.x - 3, y, L, L); + that.block.width = L; + that.blockCtx.putImageData(ImageData, 0, y + 1); + that.text.text(that.text.attr('data-text')); + }; + img.onerror = function () { + loadCount++; + if (window.location.protocol === 'file:') { + loadCount = that.options.maxLoadCount; + console.error("can't load pic resource file from File protocal. Please try http or https"); + } + if (loadCount >= that.options.maxLoadCount) { + that.text.text('加载失败').addClass('text-danger'); + return; + } + img.src = that.options.localImages(); + }; + img.setSrc = function () { + var src = ''; + loadCount = 0; + that.text.removeClass('text-danger'); + if ($.isFunction(that.options.setSrc)) src = that.options.setSrc(); + if (!src || src === '') src = 'https://picsum.photos/' + that.options.width + '/' + that.options.height + '/?image=' + Math.round(Math.random() * 20); + if (isIE) { // IE浏览器无法通过img.crossOrigin跨域,使用ajax获取图片blob然后转为dataURL显示 + var xhr = new XMLHttpRequest(); + xhr.onloadend = function (e) { + var file = new FileReader(); // FileReader仅支持IE10+ + file.readAsDataURL(e.target.response); + file.onloadend = function (e) { + img.src = e.target.result; + }; + }; + xhr.open('GET', src); + xhr.responseType = 'blob'; + xhr.send(); + } else img.src = src; + }; + img.setSrc(); + this.text.attr('data-text', this.options.barText); + this.text.text(this.options.loadingText); + this.img = img; + }; + + _proto.clean = function () { + this.canvasCtx.clearRect(0, 0, this.options.width, this.options.height); + this.blockCtx.clearRect(0, 0, this.options.width, this.options.height); + this.block.width = this.options.width; + }; + + _proto.bindEvents = function () { + var that = this; + this.$element.on('selectstart', function () { + return false; + }); + + $(this.refreshIcon).on('click', function () { + that.text.text(that.options.barText); + that.reset(); + if ($.isFunction(that.options.onRefresh)) that.options.onRefresh.call(that.$element); + }); + + var originX, originY, trail = [], + isMouseDown = false; + + var handleDragStart = function (e) { + if (that.text.hasClass('text-danger')) return; + originX = e.clientX || e.touches[0].clientX; + originY = e.clientY || e.touches[0].clientY; + isMouseDown = true; + }; + + var handleDragMove = function (e) { + if (!isMouseDown) return false; + var eventX = e.clientX || e.touches[0].clientX; + var eventY = e.clientY || e.touches[0].clientY; + var moveX = eventX - originX; + var moveY = eventY - originY; + if (moveX < 0 || moveX + 40 > that.options.width) return false; + that.slider.style.left = (moveX - 1) + 'px'; + var blockLeft = (that.options.width - 40 - 20) / (that.options.width - 40) * moveX; + that.block.style.left = blockLeft + 'px'; + + that.sliderContainer.addClass('sliderContainer_active'); + that.sliderMask.style.width = (moveX + 4) + 'px'; + trail.push(Math.round(moveY)); + }; + + var handleDragEnd = function (e) { + if (!isMouseDown) return false; + isMouseDown = false; + var eventX = e.clientX || e.changedTouches[0].clientX; + if (eventX === originX) return false; + that.sliderContainer.removeClass('sliderContainer_active'); + that.trail = trail; + var data = that.verify(); + if (data.spliced && data.verified) { + that.sliderContainer.addClass('sliderContainer_success'); + if ($.isFunction(that.options.onSuccess)) that.options.onSuccess.call(that.$element); + } else { + that.sliderContainer.addClass('sliderContainer_fail'); + if ($.isFunction(that.options.onFail)) that.options.onFail.call(that.$element); + setTimeout(function () { + that.text.text(that.options.failedText); + that.reset(); + }, 1000); + } + }; + + this.slider.addEventListener('mousedown', handleDragStart); + this.slider.addEventListener('touchstart', handleDragStart); + document.addEventListener('mousemove', handleDragMove); + document.addEventListener('touchmove', handleDragMove); + document.addEventListener('mouseup', handleDragEnd); + document.addEventListener('touchend', handleDragEnd); + + document.addEventListener('mousedown', function () { return false; }); + document.addEventListener('touchstart', function () { return false; }); + document.addEventListener('swipe', function () { return false; }); + }; + + _proto.verify = function () { + var arr = this.trail; // 拖动时y轴的移动距离 + var left = parseInt(this.block.style.left); + var verified = false; + if (this.options.remoteUrl !== null) { + verified = this.options.verify(arr, this.options.remoteUrl); + } + else { + var sum = function (x, y) { return x + y; }; + var square = function (x) { return x * x; }; + var average = arr.reduce(sum) / arr.length; + var deviations = arr.map(function (x) { return x - average; }); + var stddev = Math.sqrt(deviations.map(square).reduce(sum) / arr.length); + verified = stddev !== 0; + } + return { + spliced: Math.abs(left - this.x) < this.options.offset, + verified: verified + }; + }; + + _proto.reset = function () { + this.sliderContainer.removeClass('sliderContainer_fail sliderContainer_success'); + this.slider.style.left = 0; + this.block.style.left = 0; + this.sliderMask.style.width = 0; + this.clean(); + this.text.attr('data-text', this.text.text()); + this.text.text(this.options.loadingText); + this.img.setSrc(); + }; +})(jQuery); \ No newline at end of file diff --git a/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/slidercaptcha.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/slidercaptcha.css new file mode 100644 index 00000000..cf3e91be --- /dev/null +++ b/src/mvc/client/Bootstrap.Client/wwwroot/lib/captcha/slidercaptcha.css @@ -0,0 +1,131 @@ +body { + overflow-x: hidden; +} + +.block { + position: absolute; + left: 0; + top: 0; +} + +.sliderContainer { + position: relative; + text-align: center; + line-height: 40px; + background: #f7f9fa; + color: #45494c; + border-radius: 2px; +} + +.sliderbg { + position: absolute; + left: 0; + right: 0; + top: 0; + background-color: #f7f9fa; + height: 40px; + border-radius: 2px; + border: 1px solid #e6e8eb; +} + +.sliderContainer_active .slider { + top: -1px; + border: 1px solid #1991FA; +} + +.sliderContainer_active .sliderMask { + border-width: 1px 0 1px 1px; +} + +.sliderContainer_success .slider { + top: -1px; + border: 1px solid #52CCBA; + background-color: #52CCBA !important; +} + +.sliderContainer_success .sliderMask { + border: 1px solid #52CCBA; + border-width: 1px 0 1px 1px; + background-color: #D2F4EF; +} + +.sliderContainer_success .sliderIcon:before { + content: "\f00c"; +} + +.sliderContainer_fail .slider { + top: -1px; + border: 1px solid #f57a7a; + background-color: #f57a7a !important; +} + +.sliderContainer_fail .sliderMask { + border: 1px solid #f57a7a; + background-color: #fce1e1; + border-width: 1px 0 1px 1px; +} + +.sliderContainer_fail .sliderIcon:before { + content: "\f00d"; +} +.sliderContainer_active .sliderText, .sliderContainer_success .sliderText, .sliderContainer_fail .sliderText { + display: none; +} + +.sliderMask { + position: absolute; + left: 0; + top: 0; + height: 40px; + border: 0 solid #1991FA; + background: #D1E9FE; + border-radius: 2px; +} + +.slider { + position: absolute; + top: 0; + left: 0; + width: 40px; + height: 40px; + background: #fff; + box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); + cursor: pointer; + transition: background .2s linear; + border-radius: 2px; + display: flex; + align-items: center; + justify-content: center; +} + +.slider:hover { + background: #1991FA; +} + +.slider:hover .sliderIcon { + background-position: 0 -13px; +} + +.sliderText { + position: relative; +} + +.sliderIcon { + +} + +.refreshIcon { + position: absolute; + right: 0; + top: 0; + cursor: pointer; + margin: 6px; + color: rgba(0,0,0,.25); + font-size: 1rem; + z-index: 5; + transition: color .3s linear; +} + + .refreshIcon:hover { + color: #6c757d; + } diff --git a/src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.min.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.min.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.min.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/css/bootstrap-datetimepicker.min.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/bootstrap-datetimepicker.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.cookie.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.cookie.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.cookie.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.cookie.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.dcjqaccordion.2.7.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.dcjqaccordion.2.7.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.dcjqaccordion.2.7.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.dcjqaccordion.2.7.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.dcjqaccordion.2.7.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.dcjqaccordion.2.7.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.dcjqaccordion.2.7.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/dcjqaccordion/js/jquery.dcjqaccordion.2.7.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.css.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.css.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.css.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.css.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.min.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.min.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.min.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/css/font-awesome.min.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/FontAwesome.otf b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/FontAwesome.otf similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/FontAwesome.otf rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/FontAwesome.otf diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.eot diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.svg diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.ttf diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff diff --git a/src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 b/src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/font-awesome/fonts/fontawesome-webfont.woff2 diff --git a/src/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.min.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.min.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.min.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/dist/jquery.min.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.min.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.min.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.min.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/jquery/jquery.min.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/longbow-checkbox/longbow-checkbox.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow-checkbox/longbow-checkbox.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/longbow-checkbox/longbow-checkbox.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow-checkbox/longbow-checkbox.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/longbow-checkbox/longbow-checkbox.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow-checkbox/longbow-checkbox.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/longbow-checkbox/longbow-checkbox.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow-checkbox/longbow-checkbox.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/longbow-select/longbow-select.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow-select/longbow-select.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/longbow-select/longbow-select.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow-select/longbow-select.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/longbow-select/longbow-select.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow-select/longbow-select.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/longbow-select/longbow-select.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow-select/longbow-select.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.common.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.common.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.common.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.common.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.dataentity.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.dataentity.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.dataentity.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.dataentity.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.validate.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.validate.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.validate.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/longbow/longbow.validate.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/OverlayScrollbars.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/OverlayScrollbars.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/OverlayScrollbars.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/OverlayScrollbars.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/OverlayScrollbars.min.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/OverlayScrollbars.min.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/OverlayScrollbars.min.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/OverlayScrollbars.min.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/overlayscrollbars/jquery.overlayScrollbars.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.js.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.js.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.js.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.js.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.min.js.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.min.js.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.min.js.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/signalr/dist/browser/signalr.min.js.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.min.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.min.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.min.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.min.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/sweetalert/sweetalert2.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/tablexport/tableExport.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/tablexport/tableExport.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/tablexport/tableExport.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/tablexport/tableExport.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/tablexport/tableExport.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/tablexport/tableExport.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/tablexport/tableExport.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/tablexport/tableExport.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.js.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.js.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.js.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.js.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.min.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.min.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.min.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.min.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/toastr.js/toastr.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.css.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.css.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.css.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.css.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css b/src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css diff --git a/src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/css/bootstrap.min.css.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.js.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js.map b/src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js.map similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js.map rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/twitter-bootstrap/js/bootstrap.bundle.min.js.map diff --git a/src/client/Bootstrap.Client/wwwroot/lib/validate/jquery.validate.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/validate/jquery.validate.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/validate/jquery.validate.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/validate/jquery.validate.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/validate/jquery.validate.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/validate/jquery.validate.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/validate/jquery.validate.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/validate/jquery.validate.min.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/validate/localization/messages_zh.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/validate/localization/messages_zh.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/validate/localization/messages_zh.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/validate/localization/messages_zh.js diff --git a/src/client/Bootstrap.Client/wwwroot/lib/validate/localization/messages_zh.min.js b/src/mvc/client/Bootstrap.Client/wwwroot/lib/validate/localization/messages_zh.min.js similarity index 100% rename from src/client/Bootstrap.Client/wwwroot/lib/validate/localization/messages_zh.min.js rename to src/mvc/client/Bootstrap.Client/wwwroot/lib/validate/localization/messages_zh.min.js