diff --git a/aspnet-core/Lion.AbpPro.sln b/aspnet-core/Lion.AbpPro.sln index 9fc92c85..b14fcb26 100644 --- a/aspnet-core/Lion.AbpPro.sln +++ b/aspnet-core/Lion.AbpPro.sln @@ -1,485 +1,552 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.0.31410.414 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Domain", "services\src\Lion.AbpPro.Domain\Lion.AbpPro.Domain.csproj", "{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Application", "services\src\Lion.AbpPro.Application\Lion.AbpPro.Application.csproj", "{1A94A50E-06DC-43C1-80B5-B662820EC3EB}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.EntityFrameworkCore", "services\src\Lion.AbpPro.EntityFrameworkCore\Lion.AbpPro.EntityFrameworkCore.csproj", "{C956DD76-69C8-4A9C-83EA-D17DF83340FD}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{CA9AC87F-097E-4F15-8393-4BC07735A5B0}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{04DBDB01-70F4-4E06-B468-8F87850B22BE}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Application.Tests", "services\test\Lion.AbpPro.Application.Tests\Lion.AbpPro.Application.Tests.csproj", "{50B2631D-129C-47B3-A587-029CCD6099BC}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Domain.Shared", "services\src\Lion.AbpPro.Domain.Shared\Lion.AbpPro.Domain.Shared.csproj", "{42F719ED-8413-4895-B5B4-5AB56079BC66}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Application.Contracts", "services\src\Lion.AbpPro.Application.Contracts\Lion.AbpPro.Application.Contracts.csproj", "{520659C8-C734-4298-A3DA-B539DB9DFC0B}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.HttpApi", "services\src\Lion.AbpPro.HttpApi\Lion.AbpPro.HttpApi.csproj", "{4164BDF7-F527-4E85-9CE6-E3C2D7426A27}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.HttpApi.Client", "services\src\Lion.AbpPro.HttpApi.Client\Lion.AbpPro.HttpApi.Client.csproj", "{3B5A0094-670D-4BB1-BFDD-61B88A8773DC}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.EntityFrameworkCore.Tests", "services\test\Lion.AbpPro.EntityFrameworkCore.Tests\Lion.AbpPro.EntityFrameworkCore.Tests.csproj", "{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.TestBase", "services\test\Lion.AbpPro.TestBase\Lion.AbpPro.TestBase.csproj", "{91853F21-9CD9-4132-BC29-A7D5D84FFFE7}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Domain.Tests", "services\test\Lion.AbpPro.Domain.Tests\Lion.AbpPro.Domain.Tests.csproj", "{E512F4D9-9375-480F-A2F6-A46509F9D824}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.HttpApi.Client.ConsoleTestApp", "services\test\Lion.AbpPro.HttpApi.Client.ConsoleTestApp\Lion.AbpPro.HttpApi.Client.ConsoleTestApp.csproj", "{EF480016-9127-4916-8735-D2466BDBC582}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DbMigrator", "services\src\Lion.AbpPro.DbMigrator\Lion.AbpPro.DbMigrator.csproj", "{AA94D832-1CCC-4715-95A9-A483F23A1A5D}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "services", "services", "{2C861ADD-76E9-4B3B-8A3C-638EBB67D683}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "0.Solution Items", "0.Solution Items", "{2C4A6DB8-8D9E-42E6-B7C3-1EDB7B3DE22E}" - ProjectSection(SolutionItems) = preProject - common.props = common.props - Directory.Build.props = Directory.Build.props - global.json = global.json - NuGet.Config = NuGet.Config - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "modules", "modules", "{F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "frameworks", "frameworks", "{CC2EBB07-A070-4158-AB37-A0C0BBAEA9F5}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Extensions", "Extensions", "{9F5676A3-00DC-48B7-93D1-341C39E19BB9}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{C4AC9352-C9F5-4096-8D73-13638232CFB9}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NotificationManagement", "NotificationManagement", "{EB2B8705-18E7-49E1-A565-93A6DE5570D5}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{E28AECBD-2904-477C-9817-C67312330A41}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{120FE15B-3E5C-4BFF-B874-F09235C9E1ED}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Domain.Shared", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.Domain.Shared\Lion.AbpPro.NotificationManagement.Domain.Shared.csproj", "{3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Domain", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.Domain\Lion.AbpPro.NotificationManagement.Domain.csproj", "{F475DD35-9F27-43FF-9D96-365661ADC3C6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Application.Contracts", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.Application.Contracts\Lion.AbpPro.NotificationManagement.Application.Contracts.csproj", "{34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Application", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.Application\Lion.AbpPro.NotificationManagement.Application.csproj", "{4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.EntityFrameworkCore", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.EntityFrameworkCore\Lion.AbpPro.NotificationManagement.EntityFrameworkCore.csproj", "{10DF0925-A1EE-4B1C-AAF6-249C6D02424C}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.HttpApi", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.HttpApi\Lion.AbpPro.NotificationManagement.HttpApi.csproj", "{0880AA9C-0E45-43B3-B02A-093736CDD961}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.HttpApi.Client", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.HttpApi.Client\Lion.AbpPro.NotificationManagement.HttpApi.Client.csproj", "{B3554E2E-7150-482F-A08F-DCB8BD166FED}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Application.Tests", "modules\NotificationManagement\test\Lion.AbpPro.NotificationManagement.Application.Tests\Lion.AbpPro.NotificationManagement.Application.Tests.csproj", "{22A3A359-C6F4-4540-A61F-C8E94A73C95E}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Domain.Tests", "modules\NotificationManagement\test\Lion.AbpPro.NotificationManagement.Domain.Tests\Lion.AbpPro.NotificationManagement.Domain.Tests.csproj", "{FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.EntityFrameworkCore.Tests", "modules\NotificationManagement\test\Lion.AbpPro.NotificationManagement.EntityFrameworkCore.Tests\Lion.AbpPro.NotificationManagement.EntityFrameworkCore.Tests.csproj", "{19A921F2-1587-4E94-A023-B81956874DAB}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.TestBase", "modules\NotificationManagement\test\Lion.AbpPro.NotificationManagement.TestBase\Lion.AbpPro.NotificationManagement.TestBase.csproj", "{91A3257D-0D1A-479D-8F3C-DBB1944802FE}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DataDictionaryManagement", "DataDictionaryManagement", "{9C53260A-6F4B-4106-98B0-EDCC10BB3E1A}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{D1CFD035-1562-42CF-A96A-0E2EA8D92E80}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{E76E35FC-B62E-48D5-A7AF-79375CFD20BD}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Application", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.Application\Lion.AbpPro.DataDictionaryManagement.Application.csproj", "{5E6550EA-D878-455C-8EF7-5382661C1D52}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Application.Contracts", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.Application.Contracts\Lion.AbpPro.DataDictionaryManagement.Application.Contracts.csproj", "{14CDCC5A-006A-41EC-8B48-F3EFAC842432}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Domain", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.Domain\Lion.AbpPro.DataDictionaryManagement.Domain.csproj", "{11C6A285-8BC0-44C9-9FAB-F93462C75ABC}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Domain.Shared", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.Domain.Shared\Lion.AbpPro.DataDictionaryManagement.Domain.Shared.csproj", "{C7EB7304-CADD-4F09-84AC-43123406B28F}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore\Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore.csproj", "{DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.HttpApi", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.HttpApi\Lion.AbpPro.DataDictionaryManagement.HttpApi.csproj", "{430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.HttpApi.Client", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.HttpApi.Client\Lion.AbpPro.DataDictionaryManagement.HttpApi.Client.csproj", "{CC104C76-0CC6-453E-A49D-C4995B6EB72B}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Application.Tests", "modules\DataDictionaryManagement\test\Lion.AbpPro.DataDictionaryManagement.Application.Tests\Lion.AbpPro.DataDictionaryManagement.Application.Tests.csproj", "{13AF64F3-8962-4568-A0E1-833CCA1922D5}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Domain.Tests", "modules\DataDictionaryManagement\test\Lion.AbpPro.DataDictionaryManagement.Domain.Tests\Lion.AbpPro.DataDictionaryManagement.Domain.Tests.csproj", "{F9FADD90-8634-4B03-AC44-9F6C80B30E73}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore.Tests", "modules\DataDictionaryManagement\test\Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore.Tests\Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore.Tests.csproj", "{8BC28722-20CC-41BD-B183-4E33E94CA2A7}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.TestBase", "modules\DataDictionaryManagement\test\Lion.AbpPro.DataDictionaryManagement.TestBase\Lion.AbpPro.DataDictionaryManagement.TestBase.csproj", "{6A398750-D7D8-43DC-8DF8-AA65C5766154}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "host", "host", "{5AACD0EE-F2B2-49F6-868F-8FE08D7243C0}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.HttpApi.Host", "modules\DataDictionaryManagement\host\Lion.AbpPro.DataDictionaryManagement.HttpApi.Host\Lion.AbpPro.DataDictionaryManagement.HttpApi.Host.csproj", "{8D196E3D-6F95-4793-B948-79669AF09017}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "host", "host", "{8C1B8C6C-C518-4290-B070-622CCA6004DA}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CAP", "CAP", "{2C09EED0-5AF6-4F1E-B05A-FB3272EDF6E8}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{11ED8435-B5AE-4BF3-9D4B-51FA1E4A18A6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.HttpApi.Host", "services\host\Lion.AbpPro.HttpApi.Host\Lion.AbpPro.HttpApi.Host.csproj", "{FB20372D-6C96-4733-9AAC-12522F15CAA6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.IdentityServer", "services\host\Lion.AbpPro.IdentityServer\Lion.AbpPro.IdentityServer.csproj", "{FB1C29FF-5467-4CF0-995D-5B3F931AB135}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "shared", "shared", "{6434E3F2-B352-4B30-839A-88C2BA166D96}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Shared.Hosting.Microservices", "shared\Lion.AbpPro.Shared.Hosting.Microservices\Lion.AbpPro.Shared.Hosting.Microservices.csproj", "{A091AE9B-3A1E-49AC-9AD5-D29310512A3D}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Shared.Hosting.Gateways", "shared\Lion.AbpPro.Shared.Hosting.Gateways\Lion.AbpPro.Shared.Hosting.Gateways.csproj", "{C018EFF9-579E-43B3-9181-543BE95E2E03}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "gateways", "gateways", "{5C304CBC-F30D-413C-A0AF-8B6814A2D4A3}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.WebGateway", "gateways\Lion.AbpPro.WebGateway\Lion.AbpPro.WebGateway.csproj", "{D9108313-8D05-4F5F-9AA0-B443EC3374B6}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Extension", "frameworks\Extensions\src\Lion.AbpPro.Extension\Lion.AbpPro.Extension.csproj", "{4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.CAP", "frameworks\CAP\src\Lion.AbpPro.CAP\Lion.AbpPro.CAP.csproj", "{3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FileManagement", "FileManagement", "{F604F9BE-CAAB-4D94-8989-22DE4D966C7A}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "host", "host", "{C188A1F4-9601-42E5-9A0A-B282E13EAC41}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{2CC8E555-AA80-4D7A-B606-0821E6754187}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{40BF21CB-4520-45A6-A588-5FFB95BAC87C}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.Domain.Shared", "modules\FileManagement\src\Lion.AbpPro.FileManagement.Domain.Shared\Lion.AbpPro.FileManagement.Domain.Shared.csproj", "{866B0894-2B50-484E-BE7E-F221956557F3}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.Application", "modules\FileManagement\src\Lion.AbpPro.FileManagement.Application\Lion.AbpPro.FileManagement.Application.csproj", "{E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.Application.Contracts", "modules\FileManagement\src\Lion.AbpPro.FileManagement.Application.Contracts\Lion.AbpPro.FileManagement.Application.Contracts.csproj", "{3B5E4384-9E08-46A6-B526-DF198823D7C8}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.Domain", "modules\FileManagement\src\Lion.AbpPro.FileManagement.Domain\Lion.AbpPro.FileManagement.Domain.csproj", "{23BCC55E-3D30-4E4E-8489-15A5894EE480}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.EntityFrameworkCore", "modules\FileManagement\src\Lion.AbpPro.FileManagement.EntityFrameworkCore\Lion.AbpPro.FileManagement.EntityFrameworkCore.csproj", "{81B29ECF-F004-4DC6-9126-2E45B02C2DFE}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.HttpApi", "modules\FileManagement\src\Lion.AbpPro.FileManagement.HttpApi\Lion.AbpPro.FileManagement.HttpApi.csproj", "{65270240-0157-423A-9115-EAE2992E2FE7}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.HttpApi.Client", "modules\FileManagement\src\Lion.AbpPro.FileManagement.HttpApi.Client\Lion.AbpPro.FileManagement.HttpApi.Client.csproj", "{72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.Application.Tests", "modules\FileManagement\test\Lion.AbpPro.FileManagement.Application.Tests\Lion.AbpPro.FileManagement.Application.Tests.csproj", "{E6D3F0F8-0683-4A00-8459-C9C4C65D825D}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.Domain.Tests", "modules\FileManagement\test\Lion.AbpPro.FileManagement.Domain.Tests\Lion.AbpPro.FileManagement.Domain.Tests.csproj", "{C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.EntityFrameworkCore.Tests", "modules\FileManagement\test\Lion.AbpPro.FileManagement.EntityFrameworkCore.Tests\Lion.AbpPro.FileManagement.EntityFrameworkCore.Tests.csproj", "{80E12564-E2B3-4307-B40E-20E24BF02916}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.HttpApi.Client.ConsoleTestApp", "modules\FileManagement\test\Lion.AbpPro.FileManagement.HttpApi.Client.ConsoleTestApp\Lion.AbpPro.FileManagement.HttpApi.Client.ConsoleTestApp.csproj", "{9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.TestBase", "modules\FileManagement\test\Lion.AbpPro.FileManagement.TestBase\Lion.AbpPro.FileManagement.TestBase.csproj", "{78589964-923E-4803-9B74-183487C3ED0F}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lion.AbpPro.FileManagement.HttpApi.Host", "modules\FileManagement\host\Lion.AbpPro.FileManagement.HttpApi.Host\Lion.AbpPro.FileManagement.HttpApi.Host.csproj", "{831CD22A-AC6E-4515-AB24-8C96B34C717F}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Release|Any CPU.Build.0 = Release|Any CPU - {1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Release|Any CPU.Build.0 = Release|Any CPU - {C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Release|Any CPU.Build.0 = Release|Any CPU - {50B2631D-129C-47B3-A587-029CCD6099BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {50B2631D-129C-47B3-A587-029CCD6099BC}.Debug|Any CPU.Build.0 = Debug|Any CPU - {50B2631D-129C-47B3-A587-029CCD6099BC}.Release|Any CPU.ActiveCfg = Release|Any CPU - {50B2631D-129C-47B3-A587-029CCD6099BC}.Release|Any CPU.Build.0 = Release|Any CPU - {42F719ED-8413-4895-B5B4-5AB56079BC66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {42F719ED-8413-4895-B5B4-5AB56079BC66}.Debug|Any CPU.Build.0 = Debug|Any CPU - {42F719ED-8413-4895-B5B4-5AB56079BC66}.Release|Any CPU.ActiveCfg = Release|Any CPU - {42F719ED-8413-4895-B5B4-5AB56079BC66}.Release|Any CPU.Build.0 = Release|Any CPU - {520659C8-C734-4298-A3DA-B539DB9DFC0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {520659C8-C734-4298-A3DA-B539DB9DFC0B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {520659C8-C734-4298-A3DA-B539DB9DFC0B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {520659C8-C734-4298-A3DA-B539DB9DFC0B}.Release|Any CPU.Build.0 = Release|Any CPU - {4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Release|Any CPU.Build.0 = Release|Any CPU - {3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Release|Any CPU.Build.0 = Release|Any CPU - {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Release|Any CPU.Build.0 = Release|Any CPU - {91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Release|Any CPU.Build.0 = Release|Any CPU - {E512F4D9-9375-480F-A2F6-A46509F9D824}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E512F4D9-9375-480F-A2F6-A46509F9D824}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E512F4D9-9375-480F-A2F6-A46509F9D824}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E512F4D9-9375-480F-A2F6-A46509F9D824}.Release|Any CPU.Build.0 = Release|Any CPU - {EF480016-9127-4916-8735-D2466BDBC582}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {EF480016-9127-4916-8735-D2466BDBC582}.Debug|Any CPU.Build.0 = Debug|Any CPU - {EF480016-9127-4916-8735-D2466BDBC582}.Release|Any CPU.ActiveCfg = Release|Any CPU - {EF480016-9127-4916-8735-D2466BDBC582}.Release|Any CPU.Build.0 = Release|Any CPU - {AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Release|Any CPU.Build.0 = Release|Any CPU - {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}.Release|Any CPU.Build.0 = Release|Any CPU - {F475DD35-9F27-43FF-9D96-365661ADC3C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F475DD35-9F27-43FF-9D96-365661ADC3C6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F475DD35-9F27-43FF-9D96-365661ADC3C6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F475DD35-9F27-43FF-9D96-365661ADC3C6}.Release|Any CPU.Build.0 = Release|Any CPU - {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}.Release|Any CPU.Build.0 = Release|Any CPU - {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}.Release|Any CPU.Build.0 = Release|Any CPU - {10DF0925-A1EE-4B1C-AAF6-249C6D02424C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {10DF0925-A1EE-4B1C-AAF6-249C6D02424C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {10DF0925-A1EE-4B1C-AAF6-249C6D02424C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {10DF0925-A1EE-4B1C-AAF6-249C6D02424C}.Release|Any CPU.Build.0 = Release|Any CPU - {0880AA9C-0E45-43B3-B02A-093736CDD961}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0880AA9C-0E45-43B3-B02A-093736CDD961}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0880AA9C-0E45-43B3-B02A-093736CDD961}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0880AA9C-0E45-43B3-B02A-093736CDD961}.Release|Any CPU.Build.0 = Release|Any CPU - {B3554E2E-7150-482F-A08F-DCB8BD166FED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B3554E2E-7150-482F-A08F-DCB8BD166FED}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B3554E2E-7150-482F-A08F-DCB8BD166FED}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B3554E2E-7150-482F-A08F-DCB8BD166FED}.Release|Any CPU.Build.0 = Release|Any CPU - {22A3A359-C6F4-4540-A61F-C8E94A73C95E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {22A3A359-C6F4-4540-A61F-C8E94A73C95E}.Debug|Any CPU.Build.0 = Debug|Any CPU - {22A3A359-C6F4-4540-A61F-C8E94A73C95E}.Release|Any CPU.ActiveCfg = Release|Any CPU - {22A3A359-C6F4-4540-A61F-C8E94A73C95E}.Release|Any CPU.Build.0 = Release|Any CPU - {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}.Release|Any CPU.Build.0 = Release|Any CPU - {19A921F2-1587-4E94-A023-B81956874DAB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {19A921F2-1587-4E94-A023-B81956874DAB}.Debug|Any CPU.Build.0 = Debug|Any CPU - {19A921F2-1587-4E94-A023-B81956874DAB}.Release|Any CPU.ActiveCfg = Release|Any CPU - {19A921F2-1587-4E94-A023-B81956874DAB}.Release|Any CPU.Build.0 = Release|Any CPU - {91A3257D-0D1A-479D-8F3C-DBB1944802FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {91A3257D-0D1A-479D-8F3C-DBB1944802FE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {91A3257D-0D1A-479D-8F3C-DBB1944802FE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {91A3257D-0D1A-479D-8F3C-DBB1944802FE}.Release|Any CPU.Build.0 = Release|Any CPU - {5E6550EA-D878-455C-8EF7-5382661C1D52}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5E6550EA-D878-455C-8EF7-5382661C1D52}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5E6550EA-D878-455C-8EF7-5382661C1D52}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5E6550EA-D878-455C-8EF7-5382661C1D52}.Release|Any CPU.Build.0 = Release|Any CPU - {14CDCC5A-006A-41EC-8B48-F3EFAC842432}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {14CDCC5A-006A-41EC-8B48-F3EFAC842432}.Debug|Any CPU.Build.0 = Debug|Any CPU - {14CDCC5A-006A-41EC-8B48-F3EFAC842432}.Release|Any CPU.ActiveCfg = Release|Any CPU - {14CDCC5A-006A-41EC-8B48-F3EFAC842432}.Release|Any CPU.Build.0 = Release|Any CPU - {11C6A285-8BC0-44C9-9FAB-F93462C75ABC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {11C6A285-8BC0-44C9-9FAB-F93462C75ABC}.Debug|Any CPU.Build.0 = Debug|Any CPU - {11C6A285-8BC0-44C9-9FAB-F93462C75ABC}.Release|Any CPU.ActiveCfg = Release|Any CPU - {11C6A285-8BC0-44C9-9FAB-F93462C75ABC}.Release|Any CPU.Build.0 = Release|Any CPU - {C7EB7304-CADD-4F09-84AC-43123406B28F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C7EB7304-CADD-4F09-84AC-43123406B28F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C7EB7304-CADD-4F09-84AC-43123406B28F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C7EB7304-CADD-4F09-84AC-43123406B28F}.Release|Any CPU.Build.0 = Release|Any CPU - {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}.Release|Any CPU.Build.0 = Release|Any CPU - {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}.Debug|Any CPU.Build.0 = Debug|Any CPU - {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}.Release|Any CPU.ActiveCfg = Release|Any CPU - {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}.Release|Any CPU.Build.0 = Release|Any CPU - {CC104C76-0CC6-453E-A49D-C4995B6EB72B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {CC104C76-0CC6-453E-A49D-C4995B6EB72B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {CC104C76-0CC6-453E-A49D-C4995B6EB72B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {CC104C76-0CC6-453E-A49D-C4995B6EB72B}.Release|Any CPU.Build.0 = Release|Any CPU - {13AF64F3-8962-4568-A0E1-833CCA1922D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {13AF64F3-8962-4568-A0E1-833CCA1922D5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {13AF64F3-8962-4568-A0E1-833CCA1922D5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {13AF64F3-8962-4568-A0E1-833CCA1922D5}.Release|Any CPU.Build.0 = Release|Any CPU - {F9FADD90-8634-4B03-AC44-9F6C80B30E73}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F9FADD90-8634-4B03-AC44-9F6C80B30E73}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F9FADD90-8634-4B03-AC44-9F6C80B30E73}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F9FADD90-8634-4B03-AC44-9F6C80B30E73}.Release|Any CPU.Build.0 = Release|Any CPU - {8BC28722-20CC-41BD-B183-4E33E94CA2A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8BC28722-20CC-41BD-B183-4E33E94CA2A7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8BC28722-20CC-41BD-B183-4E33E94CA2A7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8BC28722-20CC-41BD-B183-4E33E94CA2A7}.Release|Any CPU.Build.0 = Release|Any CPU - {6A398750-D7D8-43DC-8DF8-AA65C5766154}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {6A398750-D7D8-43DC-8DF8-AA65C5766154}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6A398750-D7D8-43DC-8DF8-AA65C5766154}.Release|Any CPU.ActiveCfg = Release|Any CPU - {6A398750-D7D8-43DC-8DF8-AA65C5766154}.Release|Any CPU.Build.0 = Release|Any CPU - {8D196E3D-6F95-4793-B948-79669AF09017}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8D196E3D-6F95-4793-B948-79669AF09017}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8D196E3D-6F95-4793-B948-79669AF09017}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8D196E3D-6F95-4793-B948-79669AF09017}.Release|Any CPU.Build.0 = Release|Any CPU - {FB20372D-6C96-4733-9AAC-12522F15CAA6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FB20372D-6C96-4733-9AAC-12522F15CAA6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FB20372D-6C96-4733-9AAC-12522F15CAA6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FB20372D-6C96-4733-9AAC-12522F15CAA6}.Release|Any CPU.Build.0 = Release|Any CPU - {FB1C29FF-5467-4CF0-995D-5B3F931AB135}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FB1C29FF-5467-4CF0-995D-5B3F931AB135}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FB1C29FF-5467-4CF0-995D-5B3F931AB135}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FB1C29FF-5467-4CF0-995D-5B3F931AB135}.Release|Any CPU.Build.0 = Release|Any CPU - {A091AE9B-3A1E-49AC-9AD5-D29310512A3D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A091AE9B-3A1E-49AC-9AD5-D29310512A3D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A091AE9B-3A1E-49AC-9AD5-D29310512A3D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A091AE9B-3A1E-49AC-9AD5-D29310512A3D}.Release|Any CPU.Build.0 = Release|Any CPU - {C018EFF9-579E-43B3-9181-543BE95E2E03}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C018EFF9-579E-43B3-9181-543BE95E2E03}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C018EFF9-579E-43B3-9181-543BE95E2E03}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C018EFF9-579E-43B3-9181-543BE95E2E03}.Release|Any CPU.Build.0 = Release|Any CPU - {D9108313-8D05-4F5F-9AA0-B443EC3374B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D9108313-8D05-4F5F-9AA0-B443EC3374B6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D9108313-8D05-4F5F-9AA0-B443EC3374B6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D9108313-8D05-4F5F-9AA0-B443EC3374B6}.Release|Any CPU.Build.0 = Release|Any CPU - {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}.Release|Any CPU.Build.0 = Release|Any CPU - {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Release|Any CPU.Build.0 = Release|Any CPU - {866B0894-2B50-484E-BE7E-F221956557F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {866B0894-2B50-484E-BE7E-F221956557F3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {866B0894-2B50-484E-BE7E-F221956557F3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {866B0894-2B50-484E-BE7E-F221956557F3}.Release|Any CPU.Build.0 = Release|Any CPU - {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}.Release|Any CPU.Build.0 = Release|Any CPU - {3B5E4384-9E08-46A6-B526-DF198823D7C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3B5E4384-9E08-46A6-B526-DF198823D7C8}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3B5E4384-9E08-46A6-B526-DF198823D7C8}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3B5E4384-9E08-46A6-B526-DF198823D7C8}.Release|Any CPU.Build.0 = Release|Any CPU - {23BCC55E-3D30-4E4E-8489-15A5894EE480}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {23BCC55E-3D30-4E4E-8489-15A5894EE480}.Debug|Any CPU.Build.0 = Debug|Any CPU - {23BCC55E-3D30-4E4E-8489-15A5894EE480}.Release|Any CPU.ActiveCfg = Release|Any CPU - {23BCC55E-3D30-4E4E-8489-15A5894EE480}.Release|Any CPU.Build.0 = Release|Any CPU - {81B29ECF-F004-4DC6-9126-2E45B02C2DFE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {81B29ECF-F004-4DC6-9126-2E45B02C2DFE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {81B29ECF-F004-4DC6-9126-2E45B02C2DFE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {81B29ECF-F004-4DC6-9126-2E45B02C2DFE}.Release|Any CPU.Build.0 = Release|Any CPU - {65270240-0157-423A-9115-EAE2992E2FE7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {65270240-0157-423A-9115-EAE2992E2FE7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {65270240-0157-423A-9115-EAE2992E2FE7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {65270240-0157-423A-9115-EAE2992E2FE7}.Release|Any CPU.Build.0 = Release|Any CPU - {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}.Release|Any CPU.Build.0 = Release|Any CPU - {E6D3F0F8-0683-4A00-8459-C9C4C65D825D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E6D3F0F8-0683-4A00-8459-C9C4C65D825D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E6D3F0F8-0683-4A00-8459-C9C4C65D825D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E6D3F0F8-0683-4A00-8459-C9C4C65D825D}.Release|Any CPU.Build.0 = Release|Any CPU - {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}.Release|Any CPU.Build.0 = Release|Any CPU - {80E12564-E2B3-4307-B40E-20E24BF02916}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {80E12564-E2B3-4307-B40E-20E24BF02916}.Debug|Any CPU.Build.0 = Debug|Any CPU - {80E12564-E2B3-4307-B40E-20E24BF02916}.Release|Any CPU.ActiveCfg = Release|Any CPU - {80E12564-E2B3-4307-B40E-20E24BF02916}.Release|Any CPU.Build.0 = Release|Any CPU - {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}.Release|Any CPU.Build.0 = Release|Any CPU - {78589964-923E-4803-9B74-183487C3ED0F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {78589964-923E-4803-9B74-183487C3ED0F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {78589964-923E-4803-9B74-183487C3ED0F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {78589964-923E-4803-9B74-183487C3ED0F}.Release|Any CPU.Build.0 = Release|Any CPU - {831CD22A-AC6E-4515-AB24-8C96B34C717F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {831CD22A-AC6E-4515-AB24-8C96B34C717F}.Debug|Any CPU.Build.0 = Debug|Any CPU - {831CD22A-AC6E-4515-AB24-8C96B34C717F}.Release|Any CPU.ActiveCfg = Release|Any CPU - {831CD22A-AC6E-4515-AB24-8C96B34C717F}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {554AD327-6DBA-4F8F-96F8-81CE7A0C863F} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} - {1A94A50E-06DC-43C1-80B5-B662820EC3EB} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} - {C956DD76-69C8-4A9C-83EA-D17DF83340FD} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} - {CA9AC87F-097E-4F15-8393-4BC07735A5B0} = {2C861ADD-76E9-4B3B-8A3C-638EBB67D683} - {04DBDB01-70F4-4E06-B468-8F87850B22BE} = {2C861ADD-76E9-4B3B-8A3C-638EBB67D683} - {50B2631D-129C-47B3-A587-029CCD6099BC} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} - {42F719ED-8413-4895-B5B4-5AB56079BC66} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} - {520659C8-C734-4298-A3DA-B539DB9DFC0B} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} - {4164BDF7-F527-4E85-9CE6-E3C2D7426A27} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} - {3B5A0094-670D-4BB1-BFDD-61B88A8773DC} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} - {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} - {91853F21-9CD9-4132-BC29-A7D5D84FFFE7} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} - {E512F4D9-9375-480F-A2F6-A46509F9D824} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} - {EF480016-9127-4916-8735-D2466BDBC582} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} - {AA94D832-1CCC-4715-95A9-A483F23A1A5D} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} - {9F5676A3-00DC-48B7-93D1-341C39E19BB9} = {CC2EBB07-A070-4158-AB37-A0C0BBAEA9F5} - {C4AC9352-C9F5-4096-8D73-13638232CFB9} = {9F5676A3-00DC-48B7-93D1-341C39E19BB9} - {EB2B8705-18E7-49E1-A565-93A6DE5570D5} = {F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3} - {E28AECBD-2904-477C-9817-C67312330A41} = {EB2B8705-18E7-49E1-A565-93A6DE5570D5} - {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} = {EB2B8705-18E7-49E1-A565-93A6DE5570D5} - {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE} = {E28AECBD-2904-477C-9817-C67312330A41} - {F475DD35-9F27-43FF-9D96-365661ADC3C6} = {E28AECBD-2904-477C-9817-C67312330A41} - {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C} = {E28AECBD-2904-477C-9817-C67312330A41} - {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD} = {E28AECBD-2904-477C-9817-C67312330A41} - {10DF0925-A1EE-4B1C-AAF6-249C6D02424C} = {E28AECBD-2904-477C-9817-C67312330A41} - {0880AA9C-0E45-43B3-B02A-093736CDD961} = {E28AECBD-2904-477C-9817-C67312330A41} - {B3554E2E-7150-482F-A08F-DCB8BD166FED} = {E28AECBD-2904-477C-9817-C67312330A41} - {22A3A359-C6F4-4540-A61F-C8E94A73C95E} = {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} - {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6} = {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} - {19A921F2-1587-4E94-A023-B81956874DAB} = {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} - {91A3257D-0D1A-479D-8F3C-DBB1944802FE} = {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} - {9C53260A-6F4B-4106-98B0-EDCC10BB3E1A} = {F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3} - {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} = {9C53260A-6F4B-4106-98B0-EDCC10BB3E1A} - {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} = {9C53260A-6F4B-4106-98B0-EDCC10BB3E1A} - {5E6550EA-D878-455C-8EF7-5382661C1D52} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} - {14CDCC5A-006A-41EC-8B48-F3EFAC842432} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} - {11C6A285-8BC0-44C9-9FAB-F93462C75ABC} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} - {C7EB7304-CADD-4F09-84AC-43123406B28F} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} - {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} - {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} - {CC104C76-0CC6-453E-A49D-C4995B6EB72B} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} - {13AF64F3-8962-4568-A0E1-833CCA1922D5} = {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} - {F9FADD90-8634-4B03-AC44-9F6C80B30E73} = {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} - {8BC28722-20CC-41BD-B183-4E33E94CA2A7} = {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} - {6A398750-D7D8-43DC-8DF8-AA65C5766154} = {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} - {5AACD0EE-F2B2-49F6-868F-8FE08D7243C0} = {9C53260A-6F4B-4106-98B0-EDCC10BB3E1A} - {8D196E3D-6F95-4793-B948-79669AF09017} = {5AACD0EE-F2B2-49F6-868F-8FE08D7243C0} - {8C1B8C6C-C518-4290-B070-622CCA6004DA} = {2C861ADD-76E9-4B3B-8A3C-638EBB67D683} - {2C09EED0-5AF6-4F1E-B05A-FB3272EDF6E8} = {CC2EBB07-A070-4158-AB37-A0C0BBAEA9F5} - {11ED8435-B5AE-4BF3-9D4B-51FA1E4A18A6} = {2C09EED0-5AF6-4F1E-B05A-FB3272EDF6E8} - {FB20372D-6C96-4733-9AAC-12522F15CAA6} = {8C1B8C6C-C518-4290-B070-622CCA6004DA} - {FB1C29FF-5467-4CF0-995D-5B3F931AB135} = {8C1B8C6C-C518-4290-B070-622CCA6004DA} - {A091AE9B-3A1E-49AC-9AD5-D29310512A3D} = {6434E3F2-B352-4B30-839A-88C2BA166D96} - {C018EFF9-579E-43B3-9181-543BE95E2E03} = {6434E3F2-B352-4B30-839A-88C2BA166D96} - {D9108313-8D05-4F5F-9AA0-B443EC3374B6} = {5C304CBC-F30D-413C-A0AF-8B6814A2D4A3} - {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7} = {C4AC9352-C9F5-4096-8D73-13638232CFB9} - {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7} = {11ED8435-B5AE-4BF3-9D4B-51FA1E4A18A6} - {F604F9BE-CAAB-4D94-8989-22DE4D966C7A} = {F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3} - {C188A1F4-9601-42E5-9A0A-B282E13EAC41} = {F604F9BE-CAAB-4D94-8989-22DE4D966C7A} - {2CC8E555-AA80-4D7A-B606-0821E6754187} = {F604F9BE-CAAB-4D94-8989-22DE4D966C7A} - {40BF21CB-4520-45A6-A588-5FFB95BAC87C} = {F604F9BE-CAAB-4D94-8989-22DE4D966C7A} - {866B0894-2B50-484E-BE7E-F221956557F3} = {2CC8E555-AA80-4D7A-B606-0821E6754187} - {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B} = {2CC8E555-AA80-4D7A-B606-0821E6754187} - {3B5E4384-9E08-46A6-B526-DF198823D7C8} = {2CC8E555-AA80-4D7A-B606-0821E6754187} - {23BCC55E-3D30-4E4E-8489-15A5894EE480} = {2CC8E555-AA80-4D7A-B606-0821E6754187} - {81B29ECF-F004-4DC6-9126-2E45B02C2DFE} = {2CC8E555-AA80-4D7A-B606-0821E6754187} - {65270240-0157-423A-9115-EAE2992E2FE7} = {2CC8E555-AA80-4D7A-B606-0821E6754187} - {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C} = {2CC8E555-AA80-4D7A-B606-0821E6754187} - {E6D3F0F8-0683-4A00-8459-C9C4C65D825D} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} - {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} - {80E12564-E2B3-4307-B40E-20E24BF02916} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} - {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} - {78589964-923E-4803-9B74-183487C3ED0F} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} - {831CD22A-AC6E-4515-AB24-8C96B34C717F} = {C188A1F4-9601-42E5-9A0A-B282E13EAC41} - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {28315BFD-90E7-4E14-A2EA-F3D23AF4126F} - EndGlobalSection -EndGlobal +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.0.31410.414 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Domain", "services\src\Lion.AbpPro.Domain\Lion.AbpPro.Domain.csproj", "{554AD327-6DBA-4F8F-96F8-81CE7A0C863F}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Application", "services\src\Lion.AbpPro.Application\Lion.AbpPro.Application.csproj", "{1A94A50E-06DC-43C1-80B5-B662820EC3EB}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.EntityFrameworkCore", "services\src\Lion.AbpPro.EntityFrameworkCore\Lion.AbpPro.EntityFrameworkCore.csproj", "{C956DD76-69C8-4A9C-83EA-D17DF83340FD}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{CA9AC87F-097E-4F15-8393-4BC07735A5B0}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{04DBDB01-70F4-4E06-B468-8F87850B22BE}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Application.Tests", "services\test\Lion.AbpPro.Application.Tests\Lion.AbpPro.Application.Tests.csproj", "{50B2631D-129C-47B3-A587-029CCD6099BC}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Domain.Shared", "services\src\Lion.AbpPro.Domain.Shared\Lion.AbpPro.Domain.Shared.csproj", "{42F719ED-8413-4895-B5B4-5AB56079BC66}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Application.Contracts", "services\src\Lion.AbpPro.Application.Contracts\Lion.AbpPro.Application.Contracts.csproj", "{520659C8-C734-4298-A3DA-B539DB9DFC0B}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.HttpApi", "services\src\Lion.AbpPro.HttpApi\Lion.AbpPro.HttpApi.csproj", "{4164BDF7-F527-4E85-9CE6-E3C2D7426A27}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.HttpApi.Client", "services\src\Lion.AbpPro.HttpApi.Client\Lion.AbpPro.HttpApi.Client.csproj", "{3B5A0094-670D-4BB1-BFDD-61B88A8773DC}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.EntityFrameworkCore.Tests", "services\test\Lion.AbpPro.EntityFrameworkCore.Tests\Lion.AbpPro.EntityFrameworkCore.Tests.csproj", "{1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.TestBase", "services\test\Lion.AbpPro.TestBase\Lion.AbpPro.TestBase.csproj", "{91853F21-9CD9-4132-BC29-A7D5D84FFFE7}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Domain.Tests", "services\test\Lion.AbpPro.Domain.Tests\Lion.AbpPro.Domain.Tests.csproj", "{E512F4D9-9375-480F-A2F6-A46509F9D824}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.HttpApi.Client.ConsoleTestApp", "services\test\Lion.AbpPro.HttpApi.Client.ConsoleTestApp\Lion.AbpPro.HttpApi.Client.ConsoleTestApp.csproj", "{EF480016-9127-4916-8735-D2466BDBC582}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DbMigrator", "services\src\Lion.AbpPro.DbMigrator\Lion.AbpPro.DbMigrator.csproj", "{AA94D832-1CCC-4715-95A9-A483F23A1A5D}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "services", "services", "{2C861ADD-76E9-4B3B-8A3C-638EBB67D683}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "0.Solution Items", "0.Solution Items", "{2C4A6DB8-8D9E-42E6-B7C3-1EDB7B3DE22E}" + ProjectSection(SolutionItems) = preProject + common.props = common.props + Directory.Build.props = Directory.Build.props + global.json = global.json + NuGet.Config = NuGet.Config + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "modules", "modules", "{F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "frameworks", "frameworks", "{CC2EBB07-A070-4158-AB37-A0C0BBAEA9F5}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Extensions", "Extensions", "{9F5676A3-00DC-48B7-93D1-341C39E19BB9}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{C4AC9352-C9F5-4096-8D73-13638232CFB9}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NotificationManagement", "NotificationManagement", "{EB2B8705-18E7-49E1-A565-93A6DE5570D5}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{E28AECBD-2904-477C-9817-C67312330A41}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{120FE15B-3E5C-4BFF-B874-F09235C9E1ED}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Domain.Shared", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.Domain.Shared\Lion.AbpPro.NotificationManagement.Domain.Shared.csproj", "{3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Domain", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.Domain\Lion.AbpPro.NotificationManagement.Domain.csproj", "{F475DD35-9F27-43FF-9D96-365661ADC3C6}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Application.Contracts", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.Application.Contracts\Lion.AbpPro.NotificationManagement.Application.Contracts.csproj", "{34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Application", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.Application\Lion.AbpPro.NotificationManagement.Application.csproj", "{4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.EntityFrameworkCore", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.EntityFrameworkCore\Lion.AbpPro.NotificationManagement.EntityFrameworkCore.csproj", "{10DF0925-A1EE-4B1C-AAF6-249C6D02424C}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.HttpApi", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.HttpApi\Lion.AbpPro.NotificationManagement.HttpApi.csproj", "{0880AA9C-0E45-43B3-B02A-093736CDD961}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.HttpApi.Client", "modules\NotificationManagement\src\Lion.AbpPro.NotificationManagement.HttpApi.Client\Lion.AbpPro.NotificationManagement.HttpApi.Client.csproj", "{B3554E2E-7150-482F-A08F-DCB8BD166FED}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Application.Tests", "modules\NotificationManagement\test\Lion.AbpPro.NotificationManagement.Application.Tests\Lion.AbpPro.NotificationManagement.Application.Tests.csproj", "{22A3A359-C6F4-4540-A61F-C8E94A73C95E}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.Domain.Tests", "modules\NotificationManagement\test\Lion.AbpPro.NotificationManagement.Domain.Tests\Lion.AbpPro.NotificationManagement.Domain.Tests.csproj", "{FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.EntityFrameworkCore.Tests", "modules\NotificationManagement\test\Lion.AbpPro.NotificationManagement.EntityFrameworkCore.Tests\Lion.AbpPro.NotificationManagement.EntityFrameworkCore.Tests.csproj", "{19A921F2-1587-4E94-A023-B81956874DAB}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.NotificationManagement.TestBase", "modules\NotificationManagement\test\Lion.AbpPro.NotificationManagement.TestBase\Lion.AbpPro.NotificationManagement.TestBase.csproj", "{91A3257D-0D1A-479D-8F3C-DBB1944802FE}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DataDictionaryManagement", "DataDictionaryManagement", "{9C53260A-6F4B-4106-98B0-EDCC10BB3E1A}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{D1CFD035-1562-42CF-A96A-0E2EA8D92E80}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{E76E35FC-B62E-48D5-A7AF-79375CFD20BD}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Application", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.Application\Lion.AbpPro.DataDictionaryManagement.Application.csproj", "{5E6550EA-D878-455C-8EF7-5382661C1D52}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Application.Contracts", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.Application.Contracts\Lion.AbpPro.DataDictionaryManagement.Application.Contracts.csproj", "{14CDCC5A-006A-41EC-8B48-F3EFAC842432}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Domain", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.Domain\Lion.AbpPro.DataDictionaryManagement.Domain.csproj", "{11C6A285-8BC0-44C9-9FAB-F93462C75ABC}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Domain.Shared", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.Domain.Shared\Lion.AbpPro.DataDictionaryManagement.Domain.Shared.csproj", "{C7EB7304-CADD-4F09-84AC-43123406B28F}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore\Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore.csproj", "{DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.HttpApi", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.HttpApi\Lion.AbpPro.DataDictionaryManagement.HttpApi.csproj", "{430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.HttpApi.Client", "modules\DataDictionaryManagement\src\Lion.AbpPro.DataDictionaryManagement.HttpApi.Client\Lion.AbpPro.DataDictionaryManagement.HttpApi.Client.csproj", "{CC104C76-0CC6-453E-A49D-C4995B6EB72B}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Application.Tests", "modules\DataDictionaryManagement\test\Lion.AbpPro.DataDictionaryManagement.Application.Tests\Lion.AbpPro.DataDictionaryManagement.Application.Tests.csproj", "{13AF64F3-8962-4568-A0E1-833CCA1922D5}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.Domain.Tests", "modules\DataDictionaryManagement\test\Lion.AbpPro.DataDictionaryManagement.Domain.Tests\Lion.AbpPro.DataDictionaryManagement.Domain.Tests.csproj", "{F9FADD90-8634-4B03-AC44-9F6C80B30E73}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore.Tests", "modules\DataDictionaryManagement\test\Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore.Tests\Lion.AbpPro.DataDictionaryManagement.EntityFrameworkCore.Tests.csproj", "{8BC28722-20CC-41BD-B183-4E33E94CA2A7}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.TestBase", "modules\DataDictionaryManagement\test\Lion.AbpPro.DataDictionaryManagement.TestBase\Lion.AbpPro.DataDictionaryManagement.TestBase.csproj", "{6A398750-D7D8-43DC-8DF8-AA65C5766154}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "host", "host", "{5AACD0EE-F2B2-49F6-868F-8FE08D7243C0}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.DataDictionaryManagement.HttpApi.Host", "modules\DataDictionaryManagement\host\Lion.AbpPro.DataDictionaryManagement.HttpApi.Host\Lion.AbpPro.DataDictionaryManagement.HttpApi.Host.csproj", "{8D196E3D-6F95-4793-B948-79669AF09017}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "host", "host", "{8C1B8C6C-C518-4290-B070-622CCA6004DA}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CAP", "CAP", "{2C09EED0-5AF6-4F1E-B05A-FB3272EDF6E8}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{11ED8435-B5AE-4BF3-9D4B-51FA1E4A18A6}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.HttpApi.Host", "services\host\Lion.AbpPro.HttpApi.Host\Lion.AbpPro.HttpApi.Host.csproj", "{FB20372D-6C96-4733-9AAC-12522F15CAA6}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.IdentityServer", "services\host\Lion.AbpPro.IdentityServer\Lion.AbpPro.IdentityServer.csproj", "{FB1C29FF-5467-4CF0-995D-5B3F931AB135}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "shared", "shared", "{6434E3F2-B352-4B30-839A-88C2BA166D96}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Shared.Hosting.Microservices", "shared\Lion.AbpPro.Shared.Hosting.Microservices\Lion.AbpPro.Shared.Hosting.Microservices.csproj", "{A091AE9B-3A1E-49AC-9AD5-D29310512A3D}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Shared.Hosting.Gateways", "shared\Lion.AbpPro.Shared.Hosting.Gateways\Lion.AbpPro.Shared.Hosting.Gateways.csproj", "{C018EFF9-579E-43B3-9181-543BE95E2E03}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "gateways", "gateways", "{5C304CBC-F30D-413C-A0AF-8B6814A2D4A3}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.WebGateway", "gateways\Lion.AbpPro.WebGateway\Lion.AbpPro.WebGateway.csproj", "{D9108313-8D05-4F5F-9AA0-B443EC3374B6}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.Extension", "frameworks\Extensions\src\Lion.AbpPro.Extension\Lion.AbpPro.Extension.csproj", "{4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.CAP", "frameworks\CAP\src\Lion.AbpPro.CAP\Lion.AbpPro.CAP.csproj", "{3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "FileManagement", "FileManagement", "{F604F9BE-CAAB-4D94-8989-22DE4D966C7A}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "host", "host", "{C188A1F4-9601-42E5-9A0A-B282E13EAC41}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{2CC8E555-AA80-4D7A-B606-0821E6754187}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{40BF21CB-4520-45A6-A588-5FFB95BAC87C}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.Domain.Shared", "modules\FileManagement\src\Lion.AbpPro.FileManagement.Domain.Shared\Lion.AbpPro.FileManagement.Domain.Shared.csproj", "{866B0894-2B50-484E-BE7E-F221956557F3}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.Application", "modules\FileManagement\src\Lion.AbpPro.FileManagement.Application\Lion.AbpPro.FileManagement.Application.csproj", "{E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.Application.Contracts", "modules\FileManagement\src\Lion.AbpPro.FileManagement.Application.Contracts\Lion.AbpPro.FileManagement.Application.Contracts.csproj", "{3B5E4384-9E08-46A6-B526-DF198823D7C8}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.Domain", "modules\FileManagement\src\Lion.AbpPro.FileManagement.Domain\Lion.AbpPro.FileManagement.Domain.csproj", "{23BCC55E-3D30-4E4E-8489-15A5894EE480}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.EntityFrameworkCore", "modules\FileManagement\src\Lion.AbpPro.FileManagement.EntityFrameworkCore\Lion.AbpPro.FileManagement.EntityFrameworkCore.csproj", "{81B29ECF-F004-4DC6-9126-2E45B02C2DFE}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.HttpApi", "modules\FileManagement\src\Lion.AbpPro.FileManagement.HttpApi\Lion.AbpPro.FileManagement.HttpApi.csproj", "{65270240-0157-423A-9115-EAE2992E2FE7}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.HttpApi.Client", "modules\FileManagement\src\Lion.AbpPro.FileManagement.HttpApi.Client\Lion.AbpPro.FileManagement.HttpApi.Client.csproj", "{72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.Application.Tests", "modules\FileManagement\test\Lion.AbpPro.FileManagement.Application.Tests\Lion.AbpPro.FileManagement.Application.Tests.csproj", "{E6D3F0F8-0683-4A00-8459-C9C4C65D825D}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.Domain.Tests", "modules\FileManagement\test\Lion.AbpPro.FileManagement.Domain.Tests\Lion.AbpPro.FileManagement.Domain.Tests.csproj", "{C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.EntityFrameworkCore.Tests", "modules\FileManagement\test\Lion.AbpPro.FileManagement.EntityFrameworkCore.Tests\Lion.AbpPro.FileManagement.EntityFrameworkCore.Tests.csproj", "{80E12564-E2B3-4307-B40E-20E24BF02916}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.HttpApi.Client.ConsoleTestApp", "modules\FileManagement\test\Lion.AbpPro.FileManagement.HttpApi.Client.ConsoleTestApp\Lion.AbpPro.FileManagement.HttpApi.Client.ConsoleTestApp.csproj", "{9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.TestBase", "modules\FileManagement\test\Lion.AbpPro.FileManagement.TestBase\Lion.AbpPro.FileManagement.TestBase.csproj", "{78589964-923E-4803-9B74-183487C3ED0F}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.FileManagement.HttpApi.Host", "modules\FileManagement\host\Lion.AbpPro.FileManagement.HttpApi.Host\Lion.AbpPro.FileManagement.HttpApi.Host.csproj", "{831CD22A-AC6E-4515-AB24-8C96B34C717F}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AuditLoggingManagement", "AuditLoggingManagement", "{5D994A2D-4ABB-47B7-B1CB-474E6B6C5437}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "host", "host", "{1C6F6BDF-F309-49F5-80F9-152CB1F883AB}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{03DAEDDF-7E80-41AD-883B-FEB89992F18B}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{61DF4305-D331-40A8-9F71-792D9793AF9F}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.AuditLoggingManagement.HttpApi.Host", "modules\AuditLoggingManagement\host\Lion.AbpPro.AuditLoggingManagement.HttpApi.Host\Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.csproj", "{56AF025A-9F18-4097-9B5A-855C56E9AA04}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.AuditLoggingManagement.Application", "modules\AuditLoggingManagement\src\Lion.AbpPro.AuditLoggingManagement.Application\Lion.AbpPro.AuditLoggingManagement.Application.csproj", "{A49FCA2B-998A-4A4A-9ADE-523AB083CFBA}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.AuditLoggingManagement.Application.Contracts", "modules\AuditLoggingManagement\src\Lion.AbpPro.AuditLoggingManagement.Application.Contracts\Lion.AbpPro.AuditLoggingManagement.Application.Contracts.csproj", "{5BBF431C-8617-47A6-B10A-AE5665BF1E1F}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.AuditLoggingManagement.Domain.Shared", "modules\AuditLoggingManagement\src\Lion.AbpPro.AuditLoggingManagement.Domain.Shared\Lion.AbpPro.AuditLoggingManagement.Domain.Shared.csproj", "{994971ED-A7E5-438E-AAE3-C4F61111BFB4}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.AuditLoggingManagement.HttpApi", "modules\AuditLoggingManagement\src\Lion.AbpPro.AuditLoggingManagement.HttpApi\Lion.AbpPro.AuditLoggingManagement.HttpApi.csproj", "{63B86B76-F3ED-40E2-8F72-808B4A5FB1DE}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.AuditLoggingManagement.HttpApi.Client", "modules\AuditLoggingManagement\src\Lion.AbpPro.AuditLoggingManagement.HttpApi.Client\Lion.AbpPro.AuditLoggingManagement.HttpApi.Client.csproj", "{C28EEDC0-6D83-4D7C-AED3-F6F49AEA5E02}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.AuditLoggingManagement.Application.Tests", "modules\AuditLoggingManagement\test\Lion.AbpPro.AuditLoggingManagement.Application.Tests\Lion.AbpPro.AuditLoggingManagement.Application.Tests.csproj", "{DDC5801F-8E0D-4290-9585-EF60C7FC98E5}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Lion.AbpPro.AuditLoggingManagement.TestBase", "modules\AuditLoggingManagement\test\Lion.AbpPro.AuditLoggingManagement.TestBase\Lion.AbpPro.AuditLoggingManagement.TestBase.csproj", "{97ACF365-2693-4352-8EDD-EE26995D3215}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {554AD327-6DBA-4F8F-96F8-81CE7A0C863F}.Release|Any CPU.Build.0 = Release|Any CPU + {1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1A94A50E-06DC-43C1-80B5-B662820EC3EB}.Release|Any CPU.Build.0 = Release|Any CPU + {C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C956DD76-69C8-4A9C-83EA-D17DF83340FD}.Release|Any CPU.Build.0 = Release|Any CPU + {50B2631D-129C-47B3-A587-029CCD6099BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {50B2631D-129C-47B3-A587-029CCD6099BC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {50B2631D-129C-47B3-A587-029CCD6099BC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {50B2631D-129C-47B3-A587-029CCD6099BC}.Release|Any CPU.Build.0 = Release|Any CPU + {42F719ED-8413-4895-B5B4-5AB56079BC66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {42F719ED-8413-4895-B5B4-5AB56079BC66}.Debug|Any CPU.Build.0 = Debug|Any CPU + {42F719ED-8413-4895-B5B4-5AB56079BC66}.Release|Any CPU.ActiveCfg = Release|Any CPU + {42F719ED-8413-4895-B5B4-5AB56079BC66}.Release|Any CPU.Build.0 = Release|Any CPU + {520659C8-C734-4298-A3DA-B539DB9DFC0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {520659C8-C734-4298-A3DA-B539DB9DFC0B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {520659C8-C734-4298-A3DA-B539DB9DFC0B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {520659C8-C734-4298-A3DA-B539DB9DFC0B}.Release|Any CPU.Build.0 = Release|Any CPU + {4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4164BDF7-F527-4E85-9CE6-E3C2D7426A27}.Release|Any CPU.Build.0 = Release|Any CPU + {3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3B5A0094-670D-4BB1-BFDD-61B88A8773DC}.Release|Any CPU.Build.0 = Release|Any CPU + {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81}.Release|Any CPU.Build.0 = Release|Any CPU + {91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {91853F21-9CD9-4132-BC29-A7D5D84FFFE7}.Release|Any CPU.Build.0 = Release|Any CPU + {E512F4D9-9375-480F-A2F6-A46509F9D824}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E512F4D9-9375-480F-A2F6-A46509F9D824}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E512F4D9-9375-480F-A2F6-A46509F9D824}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E512F4D9-9375-480F-A2F6-A46509F9D824}.Release|Any CPU.Build.0 = Release|Any CPU + {EF480016-9127-4916-8735-D2466BDBC582}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {EF480016-9127-4916-8735-D2466BDBC582}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EF480016-9127-4916-8735-D2466BDBC582}.Release|Any CPU.ActiveCfg = Release|Any CPU + {EF480016-9127-4916-8735-D2466BDBC582}.Release|Any CPU.Build.0 = Release|Any CPU + {AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {AA94D832-1CCC-4715-95A9-A483F23A1A5D}.Release|Any CPU.Build.0 = Release|Any CPU + {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE}.Release|Any CPU.Build.0 = Release|Any CPU + {F475DD35-9F27-43FF-9D96-365661ADC3C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F475DD35-9F27-43FF-9D96-365661ADC3C6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F475DD35-9F27-43FF-9D96-365661ADC3C6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F475DD35-9F27-43FF-9D96-365661ADC3C6}.Release|Any CPU.Build.0 = Release|Any CPU + {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C}.Release|Any CPU.Build.0 = Release|Any CPU + {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD}.Release|Any CPU.Build.0 = Release|Any CPU + {10DF0925-A1EE-4B1C-AAF6-249C6D02424C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {10DF0925-A1EE-4B1C-AAF6-249C6D02424C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {10DF0925-A1EE-4B1C-AAF6-249C6D02424C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {10DF0925-A1EE-4B1C-AAF6-249C6D02424C}.Release|Any CPU.Build.0 = Release|Any CPU + {0880AA9C-0E45-43B3-B02A-093736CDD961}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0880AA9C-0E45-43B3-B02A-093736CDD961}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0880AA9C-0E45-43B3-B02A-093736CDD961}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0880AA9C-0E45-43B3-B02A-093736CDD961}.Release|Any CPU.Build.0 = Release|Any CPU + {B3554E2E-7150-482F-A08F-DCB8BD166FED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B3554E2E-7150-482F-A08F-DCB8BD166FED}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B3554E2E-7150-482F-A08F-DCB8BD166FED}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B3554E2E-7150-482F-A08F-DCB8BD166FED}.Release|Any CPU.Build.0 = Release|Any CPU + {22A3A359-C6F4-4540-A61F-C8E94A73C95E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {22A3A359-C6F4-4540-A61F-C8E94A73C95E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {22A3A359-C6F4-4540-A61F-C8E94A73C95E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {22A3A359-C6F4-4540-A61F-C8E94A73C95E}.Release|Any CPU.Build.0 = Release|Any CPU + {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6}.Release|Any CPU.Build.0 = Release|Any CPU + {19A921F2-1587-4E94-A023-B81956874DAB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {19A921F2-1587-4E94-A023-B81956874DAB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {19A921F2-1587-4E94-A023-B81956874DAB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {19A921F2-1587-4E94-A023-B81956874DAB}.Release|Any CPU.Build.0 = Release|Any CPU + {91A3257D-0D1A-479D-8F3C-DBB1944802FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {91A3257D-0D1A-479D-8F3C-DBB1944802FE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {91A3257D-0D1A-479D-8F3C-DBB1944802FE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {91A3257D-0D1A-479D-8F3C-DBB1944802FE}.Release|Any CPU.Build.0 = Release|Any CPU + {5E6550EA-D878-455C-8EF7-5382661C1D52}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5E6550EA-D878-455C-8EF7-5382661C1D52}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5E6550EA-D878-455C-8EF7-5382661C1D52}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5E6550EA-D878-455C-8EF7-5382661C1D52}.Release|Any CPU.Build.0 = Release|Any CPU + {14CDCC5A-006A-41EC-8B48-F3EFAC842432}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {14CDCC5A-006A-41EC-8B48-F3EFAC842432}.Debug|Any CPU.Build.0 = Debug|Any CPU + {14CDCC5A-006A-41EC-8B48-F3EFAC842432}.Release|Any CPU.ActiveCfg = Release|Any CPU + {14CDCC5A-006A-41EC-8B48-F3EFAC842432}.Release|Any CPU.Build.0 = Release|Any CPU + {11C6A285-8BC0-44C9-9FAB-F93462C75ABC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {11C6A285-8BC0-44C9-9FAB-F93462C75ABC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {11C6A285-8BC0-44C9-9FAB-F93462C75ABC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {11C6A285-8BC0-44C9-9FAB-F93462C75ABC}.Release|Any CPU.Build.0 = Release|Any CPU + {C7EB7304-CADD-4F09-84AC-43123406B28F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C7EB7304-CADD-4F09-84AC-43123406B28F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C7EB7304-CADD-4F09-84AC-43123406B28F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C7EB7304-CADD-4F09-84AC-43123406B28F}.Release|Any CPU.Build.0 = Release|Any CPU + {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5}.Release|Any CPU.Build.0 = Release|Any CPU + {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2}.Release|Any CPU.Build.0 = Release|Any CPU + {CC104C76-0CC6-453E-A49D-C4995B6EB72B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {CC104C76-0CC6-453E-A49D-C4995B6EB72B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CC104C76-0CC6-453E-A49D-C4995B6EB72B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {CC104C76-0CC6-453E-A49D-C4995B6EB72B}.Release|Any CPU.Build.0 = Release|Any CPU + {13AF64F3-8962-4568-A0E1-833CCA1922D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {13AF64F3-8962-4568-A0E1-833CCA1922D5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {13AF64F3-8962-4568-A0E1-833CCA1922D5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {13AF64F3-8962-4568-A0E1-833CCA1922D5}.Release|Any CPU.Build.0 = Release|Any CPU + {F9FADD90-8634-4B03-AC44-9F6C80B30E73}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F9FADD90-8634-4B03-AC44-9F6C80B30E73}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F9FADD90-8634-4B03-AC44-9F6C80B30E73}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F9FADD90-8634-4B03-AC44-9F6C80B30E73}.Release|Any CPU.Build.0 = Release|Any CPU + {8BC28722-20CC-41BD-B183-4E33E94CA2A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8BC28722-20CC-41BD-B183-4E33E94CA2A7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8BC28722-20CC-41BD-B183-4E33E94CA2A7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8BC28722-20CC-41BD-B183-4E33E94CA2A7}.Release|Any CPU.Build.0 = Release|Any CPU + {6A398750-D7D8-43DC-8DF8-AA65C5766154}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6A398750-D7D8-43DC-8DF8-AA65C5766154}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6A398750-D7D8-43DC-8DF8-AA65C5766154}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6A398750-D7D8-43DC-8DF8-AA65C5766154}.Release|Any CPU.Build.0 = Release|Any CPU + {8D196E3D-6F95-4793-B948-79669AF09017}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8D196E3D-6F95-4793-B948-79669AF09017}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8D196E3D-6F95-4793-B948-79669AF09017}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8D196E3D-6F95-4793-B948-79669AF09017}.Release|Any CPU.Build.0 = Release|Any CPU + {FB20372D-6C96-4733-9AAC-12522F15CAA6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FB20372D-6C96-4733-9AAC-12522F15CAA6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FB20372D-6C96-4733-9AAC-12522F15CAA6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FB20372D-6C96-4733-9AAC-12522F15CAA6}.Release|Any CPU.Build.0 = Release|Any CPU + {FB1C29FF-5467-4CF0-995D-5B3F931AB135}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FB1C29FF-5467-4CF0-995D-5B3F931AB135}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FB1C29FF-5467-4CF0-995D-5B3F931AB135}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FB1C29FF-5467-4CF0-995D-5B3F931AB135}.Release|Any CPU.Build.0 = Release|Any CPU + {A091AE9B-3A1E-49AC-9AD5-D29310512A3D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A091AE9B-3A1E-49AC-9AD5-D29310512A3D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A091AE9B-3A1E-49AC-9AD5-D29310512A3D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A091AE9B-3A1E-49AC-9AD5-D29310512A3D}.Release|Any CPU.Build.0 = Release|Any CPU + {C018EFF9-579E-43B3-9181-543BE95E2E03}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C018EFF9-579E-43B3-9181-543BE95E2E03}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C018EFF9-579E-43B3-9181-543BE95E2E03}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C018EFF9-579E-43B3-9181-543BE95E2E03}.Release|Any CPU.Build.0 = Release|Any CPU + {D9108313-8D05-4F5F-9AA0-B443EC3374B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D9108313-8D05-4F5F-9AA0-B443EC3374B6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D9108313-8D05-4F5F-9AA0-B443EC3374B6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D9108313-8D05-4F5F-9AA0-B443EC3374B6}.Release|Any CPU.Build.0 = Release|Any CPU + {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7}.Release|Any CPU.Build.0 = Release|Any CPU + {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7}.Release|Any CPU.Build.0 = Release|Any CPU + {866B0894-2B50-484E-BE7E-F221956557F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {866B0894-2B50-484E-BE7E-F221956557F3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {866B0894-2B50-484E-BE7E-F221956557F3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {866B0894-2B50-484E-BE7E-F221956557F3}.Release|Any CPU.Build.0 = Release|Any CPU + {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B}.Release|Any CPU.Build.0 = Release|Any CPU + {3B5E4384-9E08-46A6-B526-DF198823D7C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3B5E4384-9E08-46A6-B526-DF198823D7C8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3B5E4384-9E08-46A6-B526-DF198823D7C8}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3B5E4384-9E08-46A6-B526-DF198823D7C8}.Release|Any CPU.Build.0 = Release|Any CPU + {23BCC55E-3D30-4E4E-8489-15A5894EE480}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {23BCC55E-3D30-4E4E-8489-15A5894EE480}.Debug|Any CPU.Build.0 = Debug|Any CPU + {23BCC55E-3D30-4E4E-8489-15A5894EE480}.Release|Any CPU.ActiveCfg = Release|Any CPU + {23BCC55E-3D30-4E4E-8489-15A5894EE480}.Release|Any CPU.Build.0 = Release|Any CPU + {81B29ECF-F004-4DC6-9126-2E45B02C2DFE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {81B29ECF-F004-4DC6-9126-2E45B02C2DFE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {81B29ECF-F004-4DC6-9126-2E45B02C2DFE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {81B29ECF-F004-4DC6-9126-2E45B02C2DFE}.Release|Any CPU.Build.0 = Release|Any CPU + {65270240-0157-423A-9115-EAE2992E2FE7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {65270240-0157-423A-9115-EAE2992E2FE7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {65270240-0157-423A-9115-EAE2992E2FE7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {65270240-0157-423A-9115-EAE2992E2FE7}.Release|Any CPU.Build.0 = Release|Any CPU + {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C}.Release|Any CPU.Build.0 = Release|Any CPU + {E6D3F0F8-0683-4A00-8459-C9C4C65D825D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E6D3F0F8-0683-4A00-8459-C9C4C65D825D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E6D3F0F8-0683-4A00-8459-C9C4C65D825D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E6D3F0F8-0683-4A00-8459-C9C4C65D825D}.Release|Any CPU.Build.0 = Release|Any CPU + {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0}.Release|Any CPU.Build.0 = Release|Any CPU + {80E12564-E2B3-4307-B40E-20E24BF02916}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {80E12564-E2B3-4307-B40E-20E24BF02916}.Debug|Any CPU.Build.0 = Debug|Any CPU + {80E12564-E2B3-4307-B40E-20E24BF02916}.Release|Any CPU.ActiveCfg = Release|Any CPU + {80E12564-E2B3-4307-B40E-20E24BF02916}.Release|Any CPU.Build.0 = Release|Any CPU + {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B}.Release|Any CPU.Build.0 = Release|Any CPU + {78589964-923E-4803-9B74-183487C3ED0F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {78589964-923E-4803-9B74-183487C3ED0F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {78589964-923E-4803-9B74-183487C3ED0F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {78589964-923E-4803-9B74-183487C3ED0F}.Release|Any CPU.Build.0 = Release|Any CPU + {831CD22A-AC6E-4515-AB24-8C96B34C717F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {831CD22A-AC6E-4515-AB24-8C96B34C717F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {831CD22A-AC6E-4515-AB24-8C96B34C717F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {831CD22A-AC6E-4515-AB24-8C96B34C717F}.Release|Any CPU.Build.0 = Release|Any CPU + {56AF025A-9F18-4097-9B5A-855C56E9AA04}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {56AF025A-9F18-4097-9B5A-855C56E9AA04}.Debug|Any CPU.Build.0 = Debug|Any CPU + {56AF025A-9F18-4097-9B5A-855C56E9AA04}.Release|Any CPU.ActiveCfg = Release|Any CPU + {56AF025A-9F18-4097-9B5A-855C56E9AA04}.Release|Any CPU.Build.0 = Release|Any CPU + {A49FCA2B-998A-4A4A-9ADE-523AB083CFBA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A49FCA2B-998A-4A4A-9ADE-523AB083CFBA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A49FCA2B-998A-4A4A-9ADE-523AB083CFBA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A49FCA2B-998A-4A4A-9ADE-523AB083CFBA}.Release|Any CPU.Build.0 = Release|Any CPU + {5BBF431C-8617-47A6-B10A-AE5665BF1E1F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5BBF431C-8617-47A6-B10A-AE5665BF1E1F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5BBF431C-8617-47A6-B10A-AE5665BF1E1F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5BBF431C-8617-47A6-B10A-AE5665BF1E1F}.Release|Any CPU.Build.0 = Release|Any CPU + {994971ED-A7E5-438E-AAE3-C4F61111BFB4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {994971ED-A7E5-438E-AAE3-C4F61111BFB4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {994971ED-A7E5-438E-AAE3-C4F61111BFB4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {994971ED-A7E5-438E-AAE3-C4F61111BFB4}.Release|Any CPU.Build.0 = Release|Any CPU + {63B86B76-F3ED-40E2-8F72-808B4A5FB1DE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {63B86B76-F3ED-40E2-8F72-808B4A5FB1DE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {63B86B76-F3ED-40E2-8F72-808B4A5FB1DE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {63B86B76-F3ED-40E2-8F72-808B4A5FB1DE}.Release|Any CPU.Build.0 = Release|Any CPU + {C28EEDC0-6D83-4D7C-AED3-F6F49AEA5E02}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C28EEDC0-6D83-4D7C-AED3-F6F49AEA5E02}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C28EEDC0-6D83-4D7C-AED3-F6F49AEA5E02}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C28EEDC0-6D83-4D7C-AED3-F6F49AEA5E02}.Release|Any CPU.Build.0 = Release|Any CPU + {DDC5801F-8E0D-4290-9585-EF60C7FC98E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DDC5801F-8E0D-4290-9585-EF60C7FC98E5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DDC5801F-8E0D-4290-9585-EF60C7FC98E5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DDC5801F-8E0D-4290-9585-EF60C7FC98E5}.Release|Any CPU.Build.0 = Release|Any CPU + {97ACF365-2693-4352-8EDD-EE26995D3215}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {97ACF365-2693-4352-8EDD-EE26995D3215}.Debug|Any CPU.Build.0 = Debug|Any CPU + {97ACF365-2693-4352-8EDD-EE26995D3215}.Release|Any CPU.ActiveCfg = Release|Any CPU + {97ACF365-2693-4352-8EDD-EE26995D3215}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {554AD327-6DBA-4F8F-96F8-81CE7A0C863F} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} + {1A94A50E-06DC-43C1-80B5-B662820EC3EB} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} + {C956DD76-69C8-4A9C-83EA-D17DF83340FD} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} + {CA9AC87F-097E-4F15-8393-4BC07735A5B0} = {2C861ADD-76E9-4B3B-8A3C-638EBB67D683} + {04DBDB01-70F4-4E06-B468-8F87850B22BE} = {2C861ADD-76E9-4B3B-8A3C-638EBB67D683} + {50B2631D-129C-47B3-A587-029CCD6099BC} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} + {42F719ED-8413-4895-B5B4-5AB56079BC66} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} + {520659C8-C734-4298-A3DA-B539DB9DFC0B} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} + {4164BDF7-F527-4E85-9CE6-E3C2D7426A27} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} + {3B5A0094-670D-4BB1-BFDD-61B88A8773DC} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} + {1FE30EB9-74A9-47F5-A9F6-7B1FAB672D81} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} + {91853F21-9CD9-4132-BC29-A7D5D84FFFE7} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} + {E512F4D9-9375-480F-A2F6-A46509F9D824} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} + {EF480016-9127-4916-8735-D2466BDBC582} = {04DBDB01-70F4-4E06-B468-8F87850B22BE} + {AA94D832-1CCC-4715-95A9-A483F23A1A5D} = {CA9AC87F-097E-4F15-8393-4BC07735A5B0} + {9F5676A3-00DC-48B7-93D1-341C39E19BB9} = {CC2EBB07-A070-4158-AB37-A0C0BBAEA9F5} + {C4AC9352-C9F5-4096-8D73-13638232CFB9} = {9F5676A3-00DC-48B7-93D1-341C39E19BB9} + {EB2B8705-18E7-49E1-A565-93A6DE5570D5} = {F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3} + {E28AECBD-2904-477C-9817-C67312330A41} = {EB2B8705-18E7-49E1-A565-93A6DE5570D5} + {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} = {EB2B8705-18E7-49E1-A565-93A6DE5570D5} + {3E69D96A-F923-4AC4-8430-9AAB84B6A3FE} = {E28AECBD-2904-477C-9817-C67312330A41} + {F475DD35-9F27-43FF-9D96-365661ADC3C6} = {E28AECBD-2904-477C-9817-C67312330A41} + {34B5BCF2-95C0-4136-AC9E-FC80D8ACBD1C} = {E28AECBD-2904-477C-9817-C67312330A41} + {4ADEEE7D-7886-4F85-BAA2-CCEE6E30EBFD} = {E28AECBD-2904-477C-9817-C67312330A41} + {10DF0925-A1EE-4B1C-AAF6-249C6D02424C} = {E28AECBD-2904-477C-9817-C67312330A41} + {0880AA9C-0E45-43B3-B02A-093736CDD961} = {E28AECBD-2904-477C-9817-C67312330A41} + {B3554E2E-7150-482F-A08F-DCB8BD166FED} = {E28AECBD-2904-477C-9817-C67312330A41} + {22A3A359-C6F4-4540-A61F-C8E94A73C95E} = {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} + {FCE5BD62-F7C7-45EA-80DE-B4880C4A84C6} = {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} + {19A921F2-1587-4E94-A023-B81956874DAB} = {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} + {91A3257D-0D1A-479D-8F3C-DBB1944802FE} = {120FE15B-3E5C-4BFF-B874-F09235C9E1ED} + {9C53260A-6F4B-4106-98B0-EDCC10BB3E1A} = {F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3} + {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} = {9C53260A-6F4B-4106-98B0-EDCC10BB3E1A} + {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} = {9C53260A-6F4B-4106-98B0-EDCC10BB3E1A} + {5E6550EA-D878-455C-8EF7-5382661C1D52} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} + {14CDCC5A-006A-41EC-8B48-F3EFAC842432} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} + {11C6A285-8BC0-44C9-9FAB-F93462C75ABC} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} + {C7EB7304-CADD-4F09-84AC-43123406B28F} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} + {DE15C716-E1C3-4FC3-B976-7EA06EBF23F5} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} + {430D3AF9-DCCF-4B6F-BFAF-1ECC2F0594A2} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} + {CC104C76-0CC6-453E-A49D-C4995B6EB72B} = {D1CFD035-1562-42CF-A96A-0E2EA8D92E80} + {13AF64F3-8962-4568-A0E1-833CCA1922D5} = {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} + {F9FADD90-8634-4B03-AC44-9F6C80B30E73} = {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} + {8BC28722-20CC-41BD-B183-4E33E94CA2A7} = {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} + {6A398750-D7D8-43DC-8DF8-AA65C5766154} = {E76E35FC-B62E-48D5-A7AF-79375CFD20BD} + {5AACD0EE-F2B2-49F6-868F-8FE08D7243C0} = {9C53260A-6F4B-4106-98B0-EDCC10BB3E1A} + {8D196E3D-6F95-4793-B948-79669AF09017} = {5AACD0EE-F2B2-49F6-868F-8FE08D7243C0} + {8C1B8C6C-C518-4290-B070-622CCA6004DA} = {2C861ADD-76E9-4B3B-8A3C-638EBB67D683} + {2C09EED0-5AF6-4F1E-B05A-FB3272EDF6E8} = {CC2EBB07-A070-4158-AB37-A0C0BBAEA9F5} + {11ED8435-B5AE-4BF3-9D4B-51FA1E4A18A6} = {2C09EED0-5AF6-4F1E-B05A-FB3272EDF6E8} + {FB20372D-6C96-4733-9AAC-12522F15CAA6} = {8C1B8C6C-C518-4290-B070-622CCA6004DA} + {FB1C29FF-5467-4CF0-995D-5B3F931AB135} = {8C1B8C6C-C518-4290-B070-622CCA6004DA} + {A091AE9B-3A1E-49AC-9AD5-D29310512A3D} = {6434E3F2-B352-4B30-839A-88C2BA166D96} + {C018EFF9-579E-43B3-9181-543BE95E2E03} = {6434E3F2-B352-4B30-839A-88C2BA166D96} + {D9108313-8D05-4F5F-9AA0-B443EC3374B6} = {5C304CBC-F30D-413C-A0AF-8B6814A2D4A3} + {4C65690E-2C17-46A1-BB35-A51BAB2EA3B7} = {C4AC9352-C9F5-4096-8D73-13638232CFB9} + {3C3FF821-E43D-4D58-8B3C-1E97F4518EF7} = {11ED8435-B5AE-4BF3-9D4B-51FA1E4A18A6} + {F604F9BE-CAAB-4D94-8989-22DE4D966C7A} = {F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3} + {C188A1F4-9601-42E5-9A0A-B282E13EAC41} = {F604F9BE-CAAB-4D94-8989-22DE4D966C7A} + {2CC8E555-AA80-4D7A-B606-0821E6754187} = {F604F9BE-CAAB-4D94-8989-22DE4D966C7A} + {40BF21CB-4520-45A6-A588-5FFB95BAC87C} = {F604F9BE-CAAB-4D94-8989-22DE4D966C7A} + {866B0894-2B50-484E-BE7E-F221956557F3} = {2CC8E555-AA80-4D7A-B606-0821E6754187} + {E7B2B79A-09D3-4B7D-83A1-F6DE57E8584B} = {2CC8E555-AA80-4D7A-B606-0821E6754187} + {3B5E4384-9E08-46A6-B526-DF198823D7C8} = {2CC8E555-AA80-4D7A-B606-0821E6754187} + {23BCC55E-3D30-4E4E-8489-15A5894EE480} = {2CC8E555-AA80-4D7A-B606-0821E6754187} + {81B29ECF-F004-4DC6-9126-2E45B02C2DFE} = {2CC8E555-AA80-4D7A-B606-0821E6754187} + {65270240-0157-423A-9115-EAE2992E2FE7} = {2CC8E555-AA80-4D7A-B606-0821E6754187} + {72C8D8FA-9B61-415F-8FAF-08BC7BD13E9C} = {2CC8E555-AA80-4D7A-B606-0821E6754187} + {E6D3F0F8-0683-4A00-8459-C9C4C65D825D} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} + {C912E1E7-4F8F-4ADB-BB27-D40B1903FED0} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} + {80E12564-E2B3-4307-B40E-20E24BF02916} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} + {9201AEE4-2E6D-4A48-805F-3F3C6878BC0B} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} + {78589964-923E-4803-9B74-183487C3ED0F} = {40BF21CB-4520-45A6-A588-5FFB95BAC87C} + {831CD22A-AC6E-4515-AB24-8C96B34C717F} = {C188A1F4-9601-42E5-9A0A-B282E13EAC41} + {5D994A2D-4ABB-47B7-B1CB-474E6B6C5437} = {F8A8EB2A-2D4B-464F-9A13-F8F7B6A8FAA3} + {1C6F6BDF-F309-49F5-80F9-152CB1F883AB} = {5D994A2D-4ABB-47B7-B1CB-474E6B6C5437} + {03DAEDDF-7E80-41AD-883B-FEB89992F18B} = {5D994A2D-4ABB-47B7-B1CB-474E6B6C5437} + {61DF4305-D331-40A8-9F71-792D9793AF9F} = {5D994A2D-4ABB-47B7-B1CB-474E6B6C5437} + {56AF025A-9F18-4097-9B5A-855C56E9AA04} = {1C6F6BDF-F309-49F5-80F9-152CB1F883AB} + {A49FCA2B-998A-4A4A-9ADE-523AB083CFBA} = {03DAEDDF-7E80-41AD-883B-FEB89992F18B} + {5BBF431C-8617-47A6-B10A-AE5665BF1E1F} = {03DAEDDF-7E80-41AD-883B-FEB89992F18B} + {994971ED-A7E5-438E-AAE3-C4F61111BFB4} = {03DAEDDF-7E80-41AD-883B-FEB89992F18B} + {63B86B76-F3ED-40E2-8F72-808B4A5FB1DE} = {03DAEDDF-7E80-41AD-883B-FEB89992F18B} + {C28EEDC0-6D83-4D7C-AED3-F6F49AEA5E02} = {03DAEDDF-7E80-41AD-883B-FEB89992F18B} + {DDC5801F-8E0D-4290-9585-EF60C7FC98E5} = {61DF4305-D331-40A8-9F71-792D9793AF9F} + {97ACF365-2693-4352-8EDD-EE26995D3215} = {61DF4305-D331-40A8-9F71-792D9793AF9F} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {28315BFD-90E7-4E14-A2EA-F3D23AF4126F} + EndGlobalSection +EndGlobal diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/AuditLoggingManagementHttpApiHostModule.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/AuditLoggingManagementHttpApiHostModule.cs new file mode 100644 index 00000000..60795f3b --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/AuditLoggingManagementHttpApiHostModule.cs @@ -0,0 +1,128 @@ +using Lion.AbpPro.Shared.Hosting.Microservices; +using Microsoft.AspNetCore.Authentication.JwtBearer; +using Microsoft.OpenApi.Models; +using Volo.Abp; +using Volo.Abp.AspNetCore.Serilog; +using Volo.Abp.AuditLogging.EntityFrameworkCore; +using Volo.Abp.Autofac; +using Volo.Abp.EntityFrameworkCore; +using Volo.Abp.EntityFrameworkCore.MySQL; +using Volo.Abp.Modularity; + +namespace Lion.AbpPro.AuditLoggingManagement.HttpApi.Host +{ + [DependsOn( + typeof(AuditLoggingManagementApplicationModule), + typeof(AuditLoggingManagementHttpApiModule), + typeof(AbpAuditLoggingEntityFrameworkCoreModule), + typeof(SharedHostingMicroserviceModule), + typeof(AbpAutofacModule), + typeof(AbpEntityFrameworkCoreMySQLModule), + typeof(AbpAspNetCoreSerilogModule) + )] + public class AuditLoggingManagementHttpApiHostModule : AbpModule + { + public override void ConfigureServices(ServiceConfigurationContext context) + { + ConfigureSwaggerServices(context); + ConfigureDB(context); + } + + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + var app = context.GetApplicationBuilder(); + var env = context.GetEnvironment(); + + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); // 建议开启,方便开发排错 + } + + app.UseHttpsRedirection(); + app.UseCorrelationId(); + app.UseStaticFiles(); + app.UseRouting(); + app.UseAuthentication(); + app.UseAbpRequestLocalization(); + app.UseAuthorization(); + + app.UseSwagger(); + app.UseAbpSwaggerUI(options => + { + options.SwaggerEndpoint("/swagger/v1/swagger.json", "AuditLoggingManagement API"); + }); + app.UseAuditing(); + app.UseAbpSerilogEnrichers(); + app.UseConfiguredEndpoints(); + } + + /// + /// 配置SwaggerUI + /// + /// + private static void ConfigureSwaggerServices(ServiceConfigurationContext context) + { + context.Services.AddSwaggerGen( + options => + { + options.SwaggerDoc("v1", new OpenApiInfo { Title = "AuditLoggingManagement API", Version = "v1" }); + + options.DocInclusionPredicate((docName, description) => true); + + #region 添加token + + options.AddSecurityDefinition(JwtBearerDefaults.AuthenticationScheme, new OpenApiSecurityScheme() + { + Description = "请输入Token", + Name = "Authorization", + In = ParameterLocation.Header, + Type = SecuritySchemeType.Http, + Scheme = JwtBearerDefaults.AuthenticationScheme, + BearerFormat = "JWT" + }); + options.AddSecurityRequirement(new OpenApiSecurityRequirement + { + { + new OpenApiSecurityScheme + { + Reference = new OpenApiReference + { + Type = ReferenceType.SecurityScheme, Id = "Bearer" + } + }, + new List() + } + }); + + options.AddSecurityDefinition("ApiKey", new OpenApiSecurityScheme() + { + Type = SecuritySchemeType.ApiKey, + In = ParameterLocation.Header, + Name = "Accept-Language", + Description = "多语言设置,系统预设语言有zh-Hans、en,默认为zh-Hans" + }); + + options.AddSecurityRequirement(new OpenApiSecurityRequirement + { + { + new OpenApiSecurityScheme + { + Reference = new OpenApiReference{ Type = ReferenceType.SecurityScheme, Id = "ApiKey" } + }, + Array.Empty() + } + }); + + #endregion + }); + } + + private void ConfigureDB(ServiceConfigurationContext context) + { + Configure(options => + { + options.UseMySQL(); + }); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Controllers/HomeController.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Controllers/HomeController.cs new file mode 100644 index 00000000..89ae3b77 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Controllers/HomeController.cs @@ -0,0 +1,13 @@ +using Microsoft.AspNetCore.Mvc; +using Volo.Abp.AspNetCore.Mvc; + +namespace Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.Controllers +{ + public class HomeController : AbpController + { + public ActionResult Index() + { + return Redirect("~/swagger"); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/EntityFrameworkCore/AuditLoggingManagementHttpApiHostMigrationsDbContext.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/EntityFrameworkCore/AuditLoggingManagementHttpApiHostMigrationsDbContext.cs new file mode 100644 index 00000000..5ad02dd4 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/EntityFrameworkCore/AuditLoggingManagementHttpApiHostMigrationsDbContext.cs @@ -0,0 +1,25 @@ +using Microsoft.EntityFrameworkCore; +using Volo.Abp.AuditLogging; +using Volo.Abp.AuditLogging.EntityFrameworkCore; +using Volo.Abp.Data; +using Volo.Abp.EntityFrameworkCore; + +namespace Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.EntityFrameworkCore +{ + [ConnectionStringName("AbpAuditLogging")] + public class AuditLoggingManagementHttpApiHostMigrationsDbContext : AbpDbContext + { + public DbSet AuditLogs { get; set; } + + public AuditLoggingManagementHttpApiHostMigrationsDbContext(DbContextOptions options) + : base(options) + { + + } + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + base.OnModelCreating(modelBuilder); + modelBuilder.ConfigureAuditLogging(); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/EntityFrameworkCore/AuditLoggingManagementHttpApiHostMigrationsDbContextFactory.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/EntityFrameworkCore/AuditLoggingManagementHttpApiHostMigrationsDbContextFactory.cs new file mode 100644 index 00000000..e05e66b8 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/EntityFrameworkCore/AuditLoggingManagementHttpApiHostMigrationsDbContextFactory.cs @@ -0,0 +1,25 @@ +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Design; + +namespace Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.EntityFrameworkCore +{ + public class AuditLoggingManagementHttpApiHostMigrationsDbContextFactory : IDesignTimeDbContextFactory + { + public AuditLoggingManagementHttpApiHostMigrationsDbContext CreateDbContext(string[] args) + { + var configuration = BuildConfiguration(); + + var builder = new DbContextOptionsBuilder() + .UseMySql(configuration.GetConnectionString("AbpAuditLogging"), MySqlServerVersion.LatestSupportedServerVersion); + return new AuditLoggingManagementHttpApiHostMigrationsDbContext(builder.Options); + } + + private static IConfigurationRoot BuildConfiguration() + { + var builder = new ConfigurationBuilder() + .SetBasePath(Directory.GetCurrentDirectory()) + .AddJsonFile("appsettings.json", optional: false); + return builder.Build(); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.csproj b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.csproj new file mode 100644 index 00000000..965adb88 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.csproj @@ -0,0 +1,38 @@ + + + + net6.0 + enable + Lion.AbpPro.AuditLoggingManagement.HttpApi.Host + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Logs/logs.txt b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Logs/logs.txt new file mode 100644 index 00000000..eb4ae64d --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Logs/logs.txt @@ -0,0 +1,164 @@ +2022-03-13 21:59:37.640 +08:00 [INF] Starting web host. +2022-03-13 21:59:49.022 +08:00 [INF] User profile is available. Using 'C:\Users\Administrator\AppData\Local\ASP.NET\DataProtection-Keys' as key repository and Windows DPAPI to encrypt keys at rest. +2022-03-13 21:59:49.247 +08:00 [INF] Creating key {d1749119-66b3-48ae-9d21-6a34e636a937} with creation date 2022-03-13 13:59:49Z, activation date 2022-03-14 14:01:47Z, and expiration date 2022-06-11 13:59:49Z. +2022-03-13 21:59:49.259 +08:00 [INF] Writing data to file 'C:\Users\Administrator\AppData\Local\ASP.NET\DataProtection-Keys\key-d1749119-66b3-48ae-9d21-6a34e636a937.xml'. +2022-03-13 21:59:49.408 +08:00 [INF] Loaded ABP modules: +2022-03-13 21:59:49.408 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.AuditLoggingManagementHttpApiHostModule +2022-03-13 21:59:49.408 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.AuditLoggingManagementApplicationModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Application.AbpDddApplicationModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Domain.AbpDddDomainModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Auditing.AbpAuditingModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Data.AbpDataModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.ObjectExtending.AbpObjectExtendingModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Localization.AbpLocalizationAbstractionsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Validation.AbpValidationAbstractionsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Uow.AbpUnitOfWorkModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.EventBus.Abstractions.AbpEventBusAbstractionsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Json.AbpJsonModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Timing.AbpTimingModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Localization.AbpLocalizationModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.VirtualFileSystem.AbpVirtualFileSystemModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Settings.AbpSettingsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Security.AbpSecurityModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.MultiTenancy.AbpMultiTenancyModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Threading.AbpThreadingModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Auditing.AbpAuditingContractsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.EventBus.AbpEventBusModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Guids.AbpGuidsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.BackgroundWorkers.AbpBackgroundWorkersModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.DistributedLocking.AbpDistributedLockingAbstractionsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.ObjectMapping.AbpObjectMappingModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.ExceptionHandling.AbpExceptionHandlingModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Specifications.AbpSpecificationsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Application.AbpDddApplicationContractsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Validation.AbpValidationModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Authorization.AbpAuthorizationModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Authorization.AbpAuthorizationAbstractionsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Http.AbpHttpAbstractionsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Features.AbpFeaturesModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.GlobalFeatures.AbpGlobalFeaturesModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Autofac.AbpAutofacModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Castle.AbpCastleCoreModule +2022-03-13 21:59:49.408 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.AuditLoggingManagementApplicationContractsModule +2022-03-13 21:59:49.408 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.Domain.Shared.AuditLoggManagementDomainSharedModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.AuditLogging.AbpAuditLoggingDomainSharedModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.AuditLogging.AbpAuditLoggingDomainModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.AutoMapper.AbpAutoMapperModule +2022-03-13 21:59:49.408 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.AuditLoggingManagementHttpApiModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.AbpAspNetCoreMvcModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.AspNetCore.AbpAspNetCoreModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Http.AbpHttpModule +2022-03-13 21:59:49.408 +08:00 [INF] - Volo.Abp.Minify.AbpMinifyModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.ApiVersioning.AbpApiVersioningAbstractionsModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.AbpAspNetCoreMvcContractsModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.UI.Navigation.AbpUiNavigationModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.UI.AbpUiModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.AuditLogging.EntityFrameworkCore.AbpAuditLoggingEntityFrameworkCoreModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.EntityFrameworkCore.AbpEntityFrameworkCoreModule +2022-03-13 21:59:49.409 +08:00 [INF] - Lion.AbpPro.Shared.Hosting.Microservices.SharedHostingMicroserviceModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.Swashbuckle.AbpSwashbuckleModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.EntityFrameworkCore.MySQL.AbpEntityFrameworkCoreMySQLModule +2022-03-13 21:59:49.409 +08:00 [INF] - Volo.Abp.AspNetCore.Serilog.AbpAspNetCoreSerilogModule +2022-03-13 21:59:51.169 +08:00 [INF] Initialized all ABP modules. +2022-03-13 21:59:51.455 +08:00 [INF] Now listening on: http://localhost:5105 +2022-03-13 21:59:51.455 +08:00 [INF] Application started. Press Ctrl+C to shut down. +2022-03-13 21:59:51.455 +08:00 [INF] Hosting environment: Development +2022-03-13 21:59:51.455 +08:00 [INF] Content root path: D:\工作\abp-vnext-pro\aspnet-core\modules\AuditLoggingManagement\host\Lion.AbpPro.AuditLoggingManagement.HttpApi.Host +2022-03-13 21:59:52.244 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger - - +2022-03-13 21:59:52.386 +08:00 [WRN] Failed to determine the https port for redirect. +2022-03-13 21:59:52.753 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger - - - 301 0 - 507.5604ms +2022-03-13 21:59:52.760 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/index.html - - +2022-03-13 21:59:53.102 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/swagger-ui.css - - +2022-03-13 21:59:53.104 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/ui/abp.js - - +2022-03-13 21:59:53.104 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/ui/abp.swagger.js - - +2022-03-13 21:59:53.116 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/swagger-ui-standalone-preset.js - - +2022-03-13 21:59:53.116 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/swagger-ui-bundle.js - - +2022-03-13 21:59:53.147 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/index.html - - - 200 - text/html;charset=utf-8 386.3674ms +2022-03-13 21:59:53.152 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/_framework/aspnetcore-browser-refresh.js - - +2022-03-13 21:59:53.155 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/_framework/aspnetcore-browser-refresh.js - - - 200 11981 application/javascript;+charset=utf-8 3.2127ms +2022-03-13 21:59:53.159 +08:00 [INF] Sending file. Request path: '/swagger/ui/abp.js'. Physical path: 'N/A' +2022-03-13 21:59:53.159 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/ui/abp.js - - - 200 3122 application/javascript 55.8511ms +2022-03-13 21:59:53.160 +08:00 [INF] Sending file. Request path: '/swagger/ui/abp.swagger.js'. Physical path: 'N/A' +2022-03-13 21:59:53.161 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/ui/abp.swagger.js - - - 200 1057 application/javascript 56.7627ms +2022-03-13 21:59:53.173 +08:00 [INF] Sending file. Request path: '/swagger-ui-standalone-preset.js'. Physical path: 'N/A' +2022-03-13 21:59:53.173 +08:00 [INF] Sending file. Request path: '/swagger-ui.css'. Physical path: 'N/A' +2022-03-13 21:59:53.173 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/swagger-ui-standalone-preset.js - - - 200 337162 application/javascript 57.8838ms +2022-03-13 21:59:53.174 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/swagger-ui.css - - - 200 143632 text/css 72.0725ms +2022-03-13 21:59:53.218 +08:00 [INF] Sending file. Request path: '/swagger-ui-bundle.js'. Physical path: 'N/A' +2022-03-13 21:59:53.219 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/swagger-ui-bundle.js - - - 200 1092889 application/javascript 103.0417ms +2022-03-13 21:59:53.525 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/v1/swagger.json - - +2022-03-13 21:59:53.591 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/favicon-32x32.png - - +2022-03-13 21:59:53.591 +08:00 [INF] Sending file. Request path: '/favicon-32x32.png'. Physical path: 'N/A' +2022-03-13 21:59:53.592 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/favicon-32x32.png - - - 200 628 image/png 0.9992ms +2022-03-13 21:59:53.860 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/v1/swagger.json - - - 200 - application/json;charset=utf-8 335.1265ms +2022-03-13 22:01:20.351 +08:00 [INF] Starting web host. +2022-03-13 22:01:23.783 +08:00 [INF] User profile is available. Using 'C:\Users\Administrator\AppData\Local\ASP.NET\DataProtection-Keys' as key repository and Windows DPAPI to encrypt keys at rest. +2022-03-13 22:01:23.903 +08:00 [INF] Loaded ABP modules: +2022-03-13 22:01:23.903 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.AuditLoggingManagementHttpApiHostModule +2022-03-13 22:01:23.903 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.AuditLoggingManagementApplicationModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Application.AbpDddApplicationModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Domain.AbpDddDomainModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Auditing.AbpAuditingModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Data.AbpDataModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.ObjectExtending.AbpObjectExtendingModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Localization.AbpLocalizationAbstractionsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Validation.AbpValidationAbstractionsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Uow.AbpUnitOfWorkModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.EventBus.Abstractions.AbpEventBusAbstractionsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Json.AbpJsonModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Timing.AbpTimingModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Localization.AbpLocalizationModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.VirtualFileSystem.AbpVirtualFileSystemModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Settings.AbpSettingsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Security.AbpSecurityModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.MultiTenancy.AbpMultiTenancyModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Threading.AbpThreadingModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Auditing.AbpAuditingContractsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.EventBus.AbpEventBusModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Guids.AbpGuidsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.BackgroundWorkers.AbpBackgroundWorkersModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.DistributedLocking.AbpDistributedLockingAbstractionsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.ObjectMapping.AbpObjectMappingModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.ExceptionHandling.AbpExceptionHandlingModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Specifications.AbpSpecificationsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Application.AbpDddApplicationContractsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Validation.AbpValidationModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Authorization.AbpAuthorizationModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Authorization.AbpAuthorizationAbstractionsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Http.AbpHttpAbstractionsModule +2022-03-13 22:01:23.903 +08:00 [INF] - Volo.Abp.Features.AbpFeaturesModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.GlobalFeatures.AbpGlobalFeaturesModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.Autofac.AbpAutofacModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.Castle.AbpCastleCoreModule +2022-03-13 22:01:23.904 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.AuditLoggingManagementApplicationContractsModule +2022-03-13 22:01:23.904 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.Domain.Shared.AuditLoggManagementDomainSharedModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.AuditLogging.AbpAuditLoggingDomainSharedModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.AuditLogging.AbpAuditLoggingDomainModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.AutoMapper.AbpAutoMapperModule +2022-03-13 22:01:23.904 +08:00 [INF] - Lion.AbpPro.AuditLoggingManagement.AuditLoggingManagementHttpApiModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.AbpAspNetCoreMvcModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.AspNetCore.AbpAspNetCoreModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.Http.AbpHttpModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.Minify.AbpMinifyModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.ApiVersioning.AbpApiVersioningAbstractionsModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.AspNetCore.Mvc.AbpAspNetCoreMvcContractsModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.UI.Navigation.AbpUiNavigationModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.UI.AbpUiModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.AuditLogging.EntityFrameworkCore.AbpAuditLoggingEntityFrameworkCoreModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.EntityFrameworkCore.AbpEntityFrameworkCoreModule +2022-03-13 22:01:23.904 +08:00 [INF] - Lion.AbpPro.Shared.Hosting.Microservices.SharedHostingMicroserviceModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.Swashbuckle.AbpSwashbuckleModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.EntityFrameworkCore.MySQL.AbpEntityFrameworkCoreMySQLModule +2022-03-13 22:01:23.904 +08:00 [INF] - Volo.Abp.AspNetCore.Serilog.AbpAspNetCoreSerilogModule +2022-03-13 22:01:24.509 +08:00 [INF] Initialized all ABP modules. +2022-03-13 22:01:24.611 +08:00 [INF] Now listening on: http://localhost:5105 +2022-03-13 22:01:24.611 +08:00 [INF] Application started. Press Ctrl+C to shut down. +2022-03-13 22:01:24.611 +08:00 [INF] Hosting environment: Development +2022-03-13 22:01:24.611 +08:00 [INF] Content root path: D:\工作\abp-vnext-pro\aspnet-core\modules\AuditLoggingManagement\host\Lion.AbpPro.AuditLoggingManagement.HttpApi.Host +2022-03-13 22:01:25.476 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/index.html - - +2022-03-13 22:01:25.533 +08:00 [WRN] Failed to determine the https port for redirect. +2022-03-13 22:01:25.908 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/_framework/aspnetcore-browser-refresh.js - - +2022-03-13 22:01:25.911 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/_framework/aspnetcore-browser-refresh.js - - - 200 11981 application/javascript;+charset=utf-8 2.4372ms +2022-03-13 22:01:25.915 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/index.html - - - 200 - text/html;charset=utf-8 441.9388ms +2022-03-13 22:01:26.243 +08:00 [INF] Request starting HTTP/1.1 GET http://localhost:5105/swagger/v1/swagger.json - - +2022-03-13 22:01:26.487 +08:00 [INF] Request finished HTTP/1.1 GET http://localhost:5105/swagger/v1/swagger.json - - - 200 - application/json;charset=utf-8 244.4706ms diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/20220302122446_Init.Designer.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/20220302122446_Init.Designer.cs new file mode 100644 index 00000000..10cf118f --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/20220302122446_Init.Designer.cs @@ -0,0 +1,325 @@ +// +using System; +using Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Volo.Abp.EntityFrameworkCore; + +#nullable disable + +namespace Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.Migrations +{ + [DbContext(typeof(AuditLoggingManagementHttpApiHostMigrationsDbContext))] + [Migration("20220302122446_Init")] + partial class Init + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) + .HasAnnotation("ProductVersion", "6.0.2") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLog", b => + { + b.Property("Id") + .HasColumnType("char(36)"); + + b.Property("ApplicationName") + .HasMaxLength(96) + .HasColumnType("varchar(96)") + .HasColumnName("ApplicationName"); + + b.Property("BrowserInfo") + .HasMaxLength(512) + .HasColumnType("varchar(512)") + .HasColumnName("BrowserInfo"); + + b.Property("ClientId") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("ClientId"); + + b.Property("ClientIpAddress") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("ClientIpAddress"); + + b.Property("ClientName") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("ClientName"); + + b.Property("Comments") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("Comments"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property("CorrelationId") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("CorrelationId"); + + b.Property("Exceptions") + .HasColumnType("longtext"); + + b.Property("ExecutionDuration") + .HasColumnType("int") + .HasColumnName("ExecutionDuration"); + + b.Property("ExecutionTime") + .HasColumnType("datetime(6)"); + + b.Property("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property("HttpMethod") + .HasMaxLength(16) + .HasColumnType("varchar(16)") + .HasColumnName("HttpMethod"); + + b.Property("HttpStatusCode") + .HasColumnType("int") + .HasColumnName("HttpStatusCode"); + + b.Property("ImpersonatorTenantId") + .HasColumnType("char(36)") + .HasColumnName("ImpersonatorTenantId"); + + b.Property("ImpersonatorTenantName") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("ImpersonatorTenantName"); + + b.Property("ImpersonatorUserId") + .HasColumnType("char(36)") + .HasColumnName("ImpersonatorUserId"); + + b.Property("ImpersonatorUserName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("ImpersonatorUserName"); + + b.Property("TenantId") + .HasColumnType("char(36)") + .HasColumnName("TenantId"); + + b.Property("TenantName") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("TenantName"); + + b.Property("Url") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("Url"); + + b.Property("UserId") + .HasColumnType("char(36)") + .HasColumnName("UserId"); + + b.Property("UserName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("UserName"); + + b.HasKey("Id"); + + b.HasIndex("TenantId", "ExecutionTime"); + + b.HasIndex("TenantId", "UserId", "ExecutionTime"); + + b.ToTable("AbpAuditLogs", (string)null); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLogAction", b => + { + b.Property("Id") + .HasColumnType("char(36)"); + + b.Property("AuditLogId") + .HasColumnType("char(36)") + .HasColumnName("AuditLogId"); + + b.Property("ExecutionDuration") + .HasColumnType("int") + .HasColumnName("ExecutionDuration"); + + b.Property("ExecutionTime") + .HasColumnType("datetime(6)") + .HasColumnName("ExecutionTime"); + + b.Property("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property("MethodName") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("MethodName"); + + b.Property("Parameters") + .HasMaxLength(2000) + .HasColumnType("varchar(2000)") + .HasColumnName("Parameters"); + + b.Property("ServiceName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("ServiceName"); + + b.Property("TenantId") + .HasColumnType("char(36)") + .HasColumnName("TenantId"); + + b.HasKey("Id"); + + b.HasIndex("AuditLogId"); + + b.HasIndex("TenantId", "ServiceName", "MethodName", "ExecutionTime"); + + b.ToTable("AbpAuditLogActions", (string)null); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityChange", b => + { + b.Property("Id") + .HasColumnType("char(36)"); + + b.Property("AuditLogId") + .HasColumnType("char(36)") + .HasColumnName("AuditLogId"); + + b.Property("ChangeTime") + .HasColumnType("datetime(6)") + .HasColumnName("ChangeTime"); + + b.Property("ChangeType") + .HasColumnType("tinyint unsigned") + .HasColumnName("ChangeType"); + + b.Property("EntityId") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("EntityId"); + + b.Property("EntityTenantId") + .HasColumnType("char(36)"); + + b.Property("EntityTypeFullName") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("EntityTypeFullName"); + + b.Property("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property("TenantId") + .HasColumnType("char(36)") + .HasColumnName("TenantId"); + + b.HasKey("Id"); + + b.HasIndex("AuditLogId"); + + b.HasIndex("TenantId", "EntityTypeFullName", "EntityId"); + + b.ToTable("AbpEntityChanges", (string)null); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityPropertyChange", b => + { + b.Property("Id") + .HasColumnType("char(36)"); + + b.Property("EntityChangeId") + .HasColumnType("char(36)"); + + b.Property("NewValue") + .HasMaxLength(512) + .HasColumnType("varchar(512)") + .HasColumnName("NewValue"); + + b.Property("OriginalValue") + .HasMaxLength(512) + .HasColumnType("varchar(512)") + .HasColumnName("OriginalValue"); + + b.Property("PropertyName") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("PropertyName"); + + b.Property("PropertyTypeFullName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("PropertyTypeFullName"); + + b.Property("TenantId") + .HasColumnType("char(36)") + .HasColumnName("TenantId"); + + b.HasKey("Id"); + + b.HasIndex("EntityChangeId"); + + b.ToTable("AbpEntityPropertyChanges", (string)null); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLogAction", b => + { + b.HasOne("Volo.Abp.AuditLogging.AuditLog", null) + .WithMany("Actions") + .HasForeignKey("AuditLogId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityChange", b => + { + b.HasOne("Volo.Abp.AuditLogging.AuditLog", null) + .WithMany("EntityChanges") + .HasForeignKey("AuditLogId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityPropertyChange", b => + { + b.HasOne("Volo.Abp.AuditLogging.EntityChange", null) + .WithMany("PropertyChanges") + .HasForeignKey("EntityChangeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLog", b => + { + b.Navigation("Actions"); + + b.Navigation("EntityChanges"); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityChange", b => + { + b.Navigation("PropertyChanges"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/20220302122446_Init.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/20220302122446_Init.cs new file mode 100644 index 00000000..cc866d93 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/20220302122446_Init.cs @@ -0,0 +1,203 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.Migrations +{ + public partial class Init : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AlterDatabase() + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateTable( + name: "AbpAuditLogs", + columns: table => new + { + Id = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + ApplicationName = table.Column(type: "varchar(96)", maxLength: 96, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + UserId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + UserName = table.Column(type: "varchar(256)", maxLength: 256, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + TenantId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + TenantName = table.Column(type: "varchar(64)", maxLength: 64, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + ImpersonatorUserId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + ImpersonatorUserName = table.Column(type: "varchar(256)", maxLength: 256, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + ImpersonatorTenantId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + ImpersonatorTenantName = table.Column(type: "varchar(64)", maxLength: 64, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + ExecutionTime = table.Column(type: "datetime(6)", nullable: false), + ExecutionDuration = table.Column(type: "int", nullable: false), + ClientIpAddress = table.Column(type: "varchar(64)", maxLength: 64, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + ClientName = table.Column(type: "varchar(128)", maxLength: 128, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + ClientId = table.Column(type: "varchar(64)", maxLength: 64, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + CorrelationId = table.Column(type: "varchar(64)", maxLength: 64, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + BrowserInfo = table.Column(type: "varchar(512)", maxLength: 512, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + HttpMethod = table.Column(type: "varchar(16)", maxLength: 16, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + Url = table.Column(type: "varchar(256)", maxLength: 256, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + Exceptions = table.Column(type: "longtext", nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + Comments = table.Column(type: "varchar(256)", maxLength: 256, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + HttpStatusCode = table.Column(type: "int", nullable: true), + ExtraProperties = table.Column(type: "longtext", nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + ConcurrencyStamp = table.Column(type: "varchar(40)", maxLength: 40, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4") + }, + constraints: table => + { + table.PrimaryKey("PK_AbpAuditLogs", x => x.Id); + }) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateTable( + name: "AbpAuditLogActions", + columns: table => new + { + Id = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + TenantId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + AuditLogId = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + ServiceName = table.Column(type: "varchar(256)", maxLength: 256, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + MethodName = table.Column(type: "varchar(128)", maxLength: 128, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + Parameters = table.Column(type: "varchar(2000)", maxLength: 2000, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + ExecutionTime = table.Column(type: "datetime(6)", nullable: false), + ExecutionDuration = table.Column(type: "int", nullable: false), + ExtraProperties = table.Column(type: "longtext", nullable: true) + .Annotation("MySql:CharSet", "utf8mb4") + }, + constraints: table => + { + table.PrimaryKey("PK_AbpAuditLogActions", x => x.Id); + table.ForeignKey( + name: "FK_AbpAuditLogActions_AbpAuditLogs_AuditLogId", + column: x => x.AuditLogId, + principalTable: "AbpAuditLogs", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateTable( + name: "AbpEntityChanges", + columns: table => new + { + Id = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + AuditLogId = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + TenantId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + ChangeTime = table.Column(type: "datetime(6)", nullable: false), + ChangeType = table.Column(type: "tinyint unsigned", nullable: false), + EntityTenantId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + EntityId = table.Column(type: "varchar(128)", maxLength: 128, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4"), + EntityTypeFullName = table.Column(type: "varchar(128)", maxLength: 128, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4"), + ExtraProperties = table.Column(type: "longtext", nullable: true) + .Annotation("MySql:CharSet", "utf8mb4") + }, + constraints: table => + { + table.PrimaryKey("PK_AbpEntityChanges", x => x.Id); + table.ForeignKey( + name: "FK_AbpEntityChanges_AbpAuditLogs_AuditLogId", + column: x => x.AuditLogId, + principalTable: "AbpAuditLogs", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateTable( + name: "AbpEntityPropertyChanges", + columns: table => new + { + Id = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + TenantId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"), + EntityChangeId = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"), + NewValue = table.Column(type: "varchar(512)", maxLength: 512, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + OriginalValue = table.Column(type: "varchar(512)", maxLength: 512, nullable: true) + .Annotation("MySql:CharSet", "utf8mb4"), + PropertyName = table.Column(type: "varchar(128)", maxLength: 128, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4"), + PropertyTypeFullName = table.Column(type: "varchar(64)", maxLength: 64, nullable: false) + .Annotation("MySql:CharSet", "utf8mb4") + }, + constraints: table => + { + table.PrimaryKey("PK_AbpEntityPropertyChanges", x => x.Id); + table.ForeignKey( + name: "FK_AbpEntityPropertyChanges_AbpEntityChanges_EntityChangeId", + column: x => x.EntityChangeId, + principalTable: "AbpEntityChanges", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }) + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.CreateIndex( + name: "IX_AbpAuditLogActions_AuditLogId", + table: "AbpAuditLogActions", + column: "AuditLogId"); + + migrationBuilder.CreateIndex( + name: "IX_AbpAuditLogActions_TenantId_ServiceName_MethodName_Execution~", + table: "AbpAuditLogActions", + columns: new[] { "TenantId", "ServiceName", "MethodName", "ExecutionTime" }); + + migrationBuilder.CreateIndex( + name: "IX_AbpAuditLogs_TenantId_ExecutionTime", + table: "AbpAuditLogs", + columns: new[] { "TenantId", "ExecutionTime" }); + + migrationBuilder.CreateIndex( + name: "IX_AbpAuditLogs_TenantId_UserId_ExecutionTime", + table: "AbpAuditLogs", + columns: new[] { "TenantId", "UserId", "ExecutionTime" }); + + migrationBuilder.CreateIndex( + name: "IX_AbpEntityChanges_AuditLogId", + table: "AbpEntityChanges", + column: "AuditLogId"); + + migrationBuilder.CreateIndex( + name: "IX_AbpEntityChanges_TenantId_EntityTypeFullName_EntityId", + table: "AbpEntityChanges", + columns: new[] { "TenantId", "EntityTypeFullName", "EntityId" }); + + migrationBuilder.CreateIndex( + name: "IX_AbpEntityPropertyChanges_EntityChangeId", + table: "AbpEntityPropertyChanges", + column: "EntityChangeId"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "AbpAuditLogActions"); + + migrationBuilder.DropTable( + name: "AbpEntityPropertyChanges"); + + migrationBuilder.DropTable( + name: "AbpEntityChanges"); + + migrationBuilder.DropTable( + name: "AbpAuditLogs"); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/AuditLoggingManagementHttpApiHostMigrationsDbContextModelSnapshot.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/AuditLoggingManagementHttpApiHostMigrationsDbContextModelSnapshot.cs new file mode 100644 index 00000000..b0e258f0 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Migrations/AuditLoggingManagementHttpApiHostMigrationsDbContextModelSnapshot.cs @@ -0,0 +1,323 @@ +// +using System; +using Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Volo.Abp.EntityFrameworkCore; + +#nullable disable + +namespace Lion.AbpPro.AuditLoggingManagement.HttpApi.Host.Migrations +{ + [DbContext(typeof(AuditLoggingManagementHttpApiHostMigrationsDbContext))] + partial class AuditLoggingManagementHttpApiHostMigrationsDbContextModelSnapshot : ModelSnapshot + { + protected override void BuildModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) + .HasAnnotation("ProductVersion", "6.0.2") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLog", b => + { + b.Property("Id") + .HasColumnType("char(36)"); + + b.Property("ApplicationName") + .HasMaxLength(96) + .HasColumnType("varchar(96)") + .HasColumnName("ApplicationName"); + + b.Property("BrowserInfo") + .HasMaxLength(512) + .HasColumnType("varchar(512)") + .HasColumnName("BrowserInfo"); + + b.Property("ClientId") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("ClientId"); + + b.Property("ClientIpAddress") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("ClientIpAddress"); + + b.Property("ClientName") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("ClientName"); + + b.Property("Comments") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("Comments"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasColumnName("ConcurrencyStamp"); + + b.Property("CorrelationId") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("CorrelationId"); + + b.Property("Exceptions") + .HasColumnType("longtext"); + + b.Property("ExecutionDuration") + .HasColumnType("int") + .HasColumnName("ExecutionDuration"); + + b.Property("ExecutionTime") + .HasColumnType("datetime(6)"); + + b.Property("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property("HttpMethod") + .HasMaxLength(16) + .HasColumnType("varchar(16)") + .HasColumnName("HttpMethod"); + + b.Property("HttpStatusCode") + .HasColumnType("int") + .HasColumnName("HttpStatusCode"); + + b.Property("ImpersonatorTenantId") + .HasColumnType("char(36)") + .HasColumnName("ImpersonatorTenantId"); + + b.Property("ImpersonatorTenantName") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("ImpersonatorTenantName"); + + b.Property("ImpersonatorUserId") + .HasColumnType("char(36)") + .HasColumnName("ImpersonatorUserId"); + + b.Property("ImpersonatorUserName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("ImpersonatorUserName"); + + b.Property("TenantId") + .HasColumnType("char(36)") + .HasColumnName("TenantId"); + + b.Property("TenantName") + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("TenantName"); + + b.Property("Url") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("Url"); + + b.Property("UserId") + .HasColumnType("char(36)") + .HasColumnName("UserId"); + + b.Property("UserName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("UserName"); + + b.HasKey("Id"); + + b.HasIndex("TenantId", "ExecutionTime"); + + b.HasIndex("TenantId", "UserId", "ExecutionTime"); + + b.ToTable("AbpAuditLogs", (string)null); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLogAction", b => + { + b.Property("Id") + .HasColumnType("char(36)"); + + b.Property("AuditLogId") + .HasColumnType("char(36)") + .HasColumnName("AuditLogId"); + + b.Property("ExecutionDuration") + .HasColumnType("int") + .HasColumnName("ExecutionDuration"); + + b.Property("ExecutionTime") + .HasColumnType("datetime(6)") + .HasColumnName("ExecutionTime"); + + b.Property("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property("MethodName") + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("MethodName"); + + b.Property("Parameters") + .HasMaxLength(2000) + .HasColumnType("varchar(2000)") + .HasColumnName("Parameters"); + + b.Property("ServiceName") + .HasMaxLength(256) + .HasColumnType("varchar(256)") + .HasColumnName("ServiceName"); + + b.Property("TenantId") + .HasColumnType("char(36)") + .HasColumnName("TenantId"); + + b.HasKey("Id"); + + b.HasIndex("AuditLogId"); + + b.HasIndex("TenantId", "ServiceName", "MethodName", "ExecutionTime"); + + b.ToTable("AbpAuditLogActions", (string)null); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityChange", b => + { + b.Property("Id") + .HasColumnType("char(36)"); + + b.Property("AuditLogId") + .HasColumnType("char(36)") + .HasColumnName("AuditLogId"); + + b.Property("ChangeTime") + .HasColumnType("datetime(6)") + .HasColumnName("ChangeTime"); + + b.Property("ChangeType") + .HasColumnType("tinyint unsigned") + .HasColumnName("ChangeType"); + + b.Property("EntityId") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("EntityId"); + + b.Property("EntityTenantId") + .HasColumnType("char(36)"); + + b.Property("EntityTypeFullName") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("EntityTypeFullName"); + + b.Property("ExtraProperties") + .HasColumnType("longtext") + .HasColumnName("ExtraProperties"); + + b.Property("TenantId") + .HasColumnType("char(36)") + .HasColumnName("TenantId"); + + b.HasKey("Id"); + + b.HasIndex("AuditLogId"); + + b.HasIndex("TenantId", "EntityTypeFullName", "EntityId"); + + b.ToTable("AbpEntityChanges", (string)null); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityPropertyChange", b => + { + b.Property("Id") + .HasColumnType("char(36)"); + + b.Property("EntityChangeId") + .HasColumnType("char(36)"); + + b.Property("NewValue") + .HasMaxLength(512) + .HasColumnType("varchar(512)") + .HasColumnName("NewValue"); + + b.Property("OriginalValue") + .HasMaxLength(512) + .HasColumnType("varchar(512)") + .HasColumnName("OriginalValue"); + + b.Property("PropertyName") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("varchar(128)") + .HasColumnName("PropertyName"); + + b.Property("PropertyTypeFullName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("varchar(64)") + .HasColumnName("PropertyTypeFullName"); + + b.Property("TenantId") + .HasColumnType("char(36)") + .HasColumnName("TenantId"); + + b.HasKey("Id"); + + b.HasIndex("EntityChangeId"); + + b.ToTable("AbpEntityPropertyChanges", (string)null); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLogAction", b => + { + b.HasOne("Volo.Abp.AuditLogging.AuditLog", null) + .WithMany("Actions") + .HasForeignKey("AuditLogId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityChange", b => + { + b.HasOne("Volo.Abp.AuditLogging.AuditLog", null) + .WithMany("EntityChanges") + .HasForeignKey("AuditLogId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityPropertyChange", b => + { + b.HasOne("Volo.Abp.AuditLogging.EntityChange", null) + .WithMany("PropertyChanges") + .HasForeignKey("EntityChangeId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.AuditLog", b => + { + b.Navigation("Actions"); + + b.Navigation("EntityChanges"); + }); + + modelBuilder.Entity("Volo.Abp.AuditLogging.EntityChange", b => + { + b.Navigation("PropertyChanges"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Program.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Program.cs new file mode 100644 index 00000000..cfbc1d89 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Program.cs @@ -0,0 +1,48 @@ +using Lion.AbpPro.AuditLoggingManagement.HttpApi.Host; +using Serilog; +using Serilog.Events; + +public class Program +{ + public static int Main(string[] args) + { + Log.Logger = new LoggerConfiguration() +#if DEBUG + .MinimumLevel.Debug() +#else + .MinimumLevel.Information() +#endif + .MinimumLevel.Override("Microsoft", LogEventLevel.Information) + .Enrich.FromLogContext() + .WriteTo.Async(c => c.File("Logs/logs.txt")) +#if DEBUG + .WriteTo.Async(c => c.Console()) +#endif + .CreateLogger(); + + try + { + Log.Information("Starting web host."); + CreateHostBuilder(args).Build().Run(); + return 0; + } + catch (Exception ex) + { + Log.Fatal(ex, "Host terminated unexpectedly!"); + return 1; + } + finally + { + Log.CloseAndFlush(); + } + } + + internal static IHostBuilder CreateHostBuilder(string[] args) => + Host.CreateDefaultBuilder(args) + .ConfigureWebHostDefaults(webBuilder => + { + webBuilder.UseStartup(); + }) + .UseAutofac() + .UseSerilog(); +} \ No newline at end of file diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Properties/launchSettings.json b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Properties/launchSettings.json new file mode 100644 index 00000000..d45cf9a0 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Properties/launchSettings.json @@ -0,0 +1,14 @@ +{ + "profiles": { + "Lion.AbpPro.AuditLoggingManagement.HttpApi.Host": { + "commandName": "Project", + "dotnetRunMessages": true, + "launchBrowser": true, + "launchUrl": "swagger", + "applicationUrl": "http://localhost:5105", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Startup.cs b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Startup.cs new file mode 100644 index 00000000..d225844d --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/Startup.cs @@ -0,0 +1,15 @@ +namespace Lion.AbpPro.AuditLoggingManagement.HttpApi.Host +{ + public class Startup + { + public void ConfigureServices(IServiceCollection services) + { + services.AddApplication(); + } + + public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory) + { + app.InitializeApplication(); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/appsettings.Development.json b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/appsettings.Development.json new file mode 100644 index 00000000..10baeb11 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/appsettings.Development.json @@ -0,0 +1,11 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "ConnectionStrings": { + "AbpAuditLogging": "Data Source=localhost;Port=3306;Database=AuditLoggingManagement;uid=root;pwd=1234;charset=utf8mb4;Allow User Variables=true;AllowLoadLocalInfile=true" + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/appsettings.json b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/appsettings.json new file mode 100644 index 00000000..ac02ef26 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/host/Lion.AbpPro.AuditLoggingManagement.HttpApi.Host/appsettings.json @@ -0,0 +1,12 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "ConnectionStrings": { + "AbpAuditLogging": "Data Source=localhost;Port=3306;Database=AuditLoggingManagement;uid=root;pwd=1234;charset=utf8mb4;Allow User Variables=true;AllowLoadLocalInfile=true" + }, + "AllowedHosts": "*" +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLoggingManagementApplicationContractsModule.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLoggingManagementApplicationContractsModule.cs new file mode 100644 index 00000000..7a37a685 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLoggingManagementApplicationContractsModule.cs @@ -0,0 +1,18 @@ +using Lion.AbpPro.AuditLoggingManagement.Domain.Shared; +using Volo.Abp.Application; +using Volo.Abp.AuditLogging; +using Volo.Abp.Authorization; +using Volo.Abp.Modularity; + +namespace Lion.AbpPro.AuditLoggingManagement +{ + [DependsOn( + typeof(AuditLoggManagementDomainSharedModule), + typeof(AbpAuditLoggingDomainSharedModule), + typeof(AbpDddApplicationContractsModule), + typeof(AbpAuthorizationAbstractionsModule) + )] + public class AuditLoggingManagementApplicationContractsModule : AbpModule + { + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/AuditLogActionOutput.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/AuditLogActionOutput.cs new file mode 100644 index 00000000..cc97d1c1 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/AuditLogActionOutput.cs @@ -0,0 +1,19 @@ +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos +{ + public class AuditLogActionOutput + { + public Guid? Id { set; get; } + + public Guid? TenantId { set; get; } + + public string ServiceName { set; get; } + + public string MethodName { set; get; } + + public string Parameters { set; get; } + + public DateTime ExecutionTime { set; get; } + + public int ExecutionDuration { set; get; } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/AuditLogOutput.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/AuditLogOutput.cs new file mode 100644 index 00000000..d0665b54 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/AuditLogOutput.cs @@ -0,0 +1,39 @@ +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos +{ + public class AuditLogOutput + { + public Guid Id { set; get; } + + public string ApplicationName { get; set; } + + public Guid? UserId { get; set; } + + public string UserName { get; set; } + + public Guid? TenantId { get; set; } + + public string TenantName { get; set; } + + public DateTime ExecutionTime { get; set; } + + public int ExecutionDuration { get; set; } + + public string ClientIpAddress { get; set; } + + public string ClientName { get; set; } + + public string CorrelationId { get; set; } + + public string HttpMethod { get; set; } + + public string Url { get; set; } + + public string Exceptions { get; set; } + + public int? HttpStatusCode { get; set; } + + //public ICollection EntityChanges { get; set; } + + public ICollection Actions { get; set; } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/EntityChangeOutput.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/EntityChangeOutput.cs new file mode 100644 index 00000000..75220a31 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/EntityChangeOutput.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Volo.Abp.Auditing; +using Volo.Abp.Data; + +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos +{ + public class EntityChangeOutput + { + public Guid AuditLogId { get; set; } + + public Guid? TenantId { get; set; } + + public DateTime ChangeTime { get; set; } + + public EntityChangeType ChangeType { get; set; } + + public Guid? EntityTenantId { get; set; } + + public string EntityId { get; set; } + + public string EntityTypeFullName { get; set; } + + public ICollection PropertyChanges { get; set; } + + public ExtraPropertyDictionary ExtraProperties { get; set; } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/EntityPropertyChangeOutput.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/EntityPropertyChangeOutput.cs new file mode 100644 index 00000000..3c8d09f9 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/EntityPropertyChangeOutput.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos +{ + public class EntityPropertyChangeOutput + { + public Guid? TenantId { get; set; } + + public Guid EntityChangeId { get; set; } + + public string NewValue { get; set; } + + public string OriginalValue { get; set; } + + public string PropertyName { get; set; } + + public string PropertyTypeFullName { get; set; } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/GetAuditLogsInput.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/GetAuditLogsInput.cs new file mode 100644 index 00000000..67699353 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/GetAuditLogsInput.cs @@ -0,0 +1,41 @@ +using System.Net; + +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos +{ + public class GetAuditLogsInput + { + public string Sorting { get; set; } + + public int MaxResultCount { get; set; } = 50; + + public int SkipCount { get; set; } = 0; + + public DateTime? StartExecutionTime { get; set; } + + public DateTime? EndExecutionTime { get; set; } + + public string HttpMethod { get; set; } + + public string Url { get; set; } + + public Guid? UserId { get; set; } + + public string UserName { get; set; } + + public string ApplicationName { get; set; } + + public string ClientIpAddress { get; set; } + + public string CorrelationId { get; set; } + + public int? MaxExecutionDuration { get; set; } + + public int? MinExecutionDuration { get; set; } + + public bool? HasException { get; set; } + + public HttpStatusCode? HttpStatusCode { get; set;} + + public bool IncludeDetails { get; set; } = true; + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/GetEntityChangesInput.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/GetEntityChangesInput.cs new file mode 100644 index 00000000..e9630807 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/Dtos/GetEntityChangesInput.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Volo.Abp.Auditing; + +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos +{ + public class GetEntityChangesInput + { + public string Sorting { set; get; } + + public int MaxResultCount { set; get; } = 50; + + public int SkipCount { set; get; } = 0; + + public Guid? AuditLogId { set; get; } + + public DateTime? StartTime { set; get; } + + public DateTime? SndTime { set; get; } + + public EntityChangeType? ChangeType { set; get; } + + public string EntityId { set; get; } + + public string EntityTypeFullName { set; get; } + + public bool IncludeDetails { set; get; } = true; + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/IAuditLogAppService.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/IAuditLogAppService.cs new file mode 100644 index 00000000..583b3207 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/AuditLogs/IAuditLogAppService.cs @@ -0,0 +1,17 @@ +using Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos; +using Volo.Abp.Application.Dtos; +using Volo.Abp.Application.Services; + +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs +{ + public interface IAuditLogAppService : IApplicationService + { + Task> GetPageListAsync(GetAuditLogsInput input, CancellationToken cancellationToken = default); + + Task> GetEntityChangePageListAsync(GetEntityChangesInput input, CancellationToken cancellationToken = default); + + Task GetAsync(Guid id, CancellationToken cancellationToken = default); + + Task DeleteAsync(Guid id, CancellationToken cancellationToken = default); + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Lion.AbpPro.AuditLoggingManagement.Application.Contracts.csproj b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Lion.AbpPro.AuditLoggingManagement.Application.Contracts.csproj new file mode 100644 index 00000000..af974c4c --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Lion.AbpPro.AuditLoggingManagement.Application.Contracts.csproj @@ -0,0 +1,20 @@ + + + + + net6.0 + enable + Lion.AbpPro.AuditLoggingManagement + + + + + + + + + + + + + diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Permissions/AuditLogManagementPermissionDefinitionProvider.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Permissions/AuditLogManagementPermissionDefinitionProvider.cs new file mode 100644 index 00000000..9b9f50b2 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Permissions/AuditLogManagementPermissionDefinitionProvider.cs @@ -0,0 +1,24 @@ +using Lion.AbpPro.AuditLoggingManagement.Domain.Shared.Localization; +using Volo.Abp.Authorization.Permissions; +using Volo.Abp.Localization; + +namespace Lion.AbpPro.AuditLoggingManagement.Permissions +{ + public class AuditLogManagementPermissionDefinitionProvider : PermissionDefinitionProvider + { + public const string GroupName = "AuditLogManagement"; + + public override void Define(IPermissionDefinitionContext context) + { + var auditLogsGroup = context.AddGroup(GroupName, L("AuditLogManagement")); + + var auditLogs = auditLogsGroup.AddPermission(AuditLogManagementPermissions.AuditLogs.Default, L("Permission:AuditLogManagement.AuditLogs")); + auditLogs.AddChild(AuditLogManagementPermissions.AuditLogs.Delete, L("Permission:AuditLogManagement.AuditLogs.Delete")); + } + + private static LocalizableString L(string name) + { + return LocalizableString.Create(name); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Permissions/AuditLogManagementPermissions.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Permissions/AuditLogManagementPermissions.cs new file mode 100644 index 00000000..7547dd70 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application.Contracts/Permissions/AuditLogManagementPermissions.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Lion.AbpPro.AuditLoggingManagement.Permissions +{ + public class AuditLogManagementPermissions + { + public const string GroupName = "AuditLogManagement"; + + public static class AuditLogs + { + public const string Default = GroupName + ".AuditLogs"; + public const string Create = Default + ".Create"; + public const string Update = Default + ".Update"; + public const string Delete = Default + ".Delete"; + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLoggingManagementAppServiceBase.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLoggingManagementAppServiceBase.cs new file mode 100644 index 00000000..3ba36313 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLoggingManagementAppServiceBase.cs @@ -0,0 +1,14 @@ +using Lion.AbpPro.AuditLoggingManagement.Domain.Shared.Localization; +using Volo.Abp.Application.Services; + +namespace Lion.AbpPro.AuditLoggingManagement +{ + public abstract class AuditLoggingManagementAppServiceBase : ApplicationService + { + protected AuditLoggingManagementAppServiceBase() + { + LocalizationResource = typeof(AuditLogManagementResource); + ObjectMapperContext = typeof(AuditLoggingManagementApplicationModule); + } + } +} \ No newline at end of file diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLoggingManagementApplicationModule.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLoggingManagementApplicationModule.cs new file mode 100644 index 00000000..8953a6e4 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLoggingManagementApplicationModule.cs @@ -0,0 +1,28 @@ +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Application; +using Volo.Abp.AuditLogging; +using Volo.Abp.Autofac; +using Volo.Abp.AutoMapper; +using Volo.Abp.Modularity; + +namespace Lion.AbpPro.AuditLoggingManagement +{ + [DependsOn( + typeof(AbpDddApplicationModule), + typeof(AbpAutofacModule), + typeof(AuditLoggingManagementApplicationContractsModule), + typeof(AbpAuditLoggingDomainModule), + typeof(AbpAutoMapperModule) + )] + public class AuditLoggingManagementApplicationModule : AbpModule + { + public override void ConfigureServices(ServiceConfigurationContext context) + { + context.Services.AddAutoMapperObjectMapper(); + Configure(options => + { + options.AddMaps(); + }); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLogs/AuditLogAppService.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLogs/AuditLogAppService.cs new file mode 100644 index 00000000..7890156a --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLogs/AuditLogAppService.cs @@ -0,0 +1,86 @@ +using Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos; +using Volo.Abp; +using Volo.Abp.Application.Dtos; +using Volo.Abp.AuditLogging; + +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs +{ + public class AuditLogAppService : AuditLoggingManagementAppServiceBase, IAuditLogAppService + { + private readonly IAuditLogRepository _auditLogRepository; + + public AuditLogAppService(IAuditLogRepository auditLogRepository) + { + _auditLogRepository = auditLogRepository; + } + + public async Task> GetPageListAsync(GetAuditLogsInput input, CancellationToken cancellationToken = default) + { + var auditLogs = await _auditLogRepository.GetListAsync( + input.Sorting, + input.MaxResultCount, + input.SkipCount, + input.StartExecutionTime, + input.EndExecutionTime, + input.HttpMethod, + input.Url, + input.UserId, + input.UserName, + input.ApplicationName, + input.ClientIpAddress, + input.CorrelationId, + input.MaxExecutionDuration, + input.MinExecutionDuration, + input.HasException, + input.HttpStatusCode, + input.IncludeDetails, + cancellationToken + ); + + var datas = ObjectMapper.Map, List>(auditLogs); + return new ListResultDto(datas); + } + + public async Task GetAsync(Guid id, CancellationToken cancellationToken = default) + { + var auditLog = await _auditLogRepository.FindAsync(model => model.Id == id, cancellationToken: cancellationToken); + if (null == auditLog) + { + throw new UserFriendlyException(L["AuditLogNotFound", id]); + } + + return ObjectMapper.Map(auditLog); + } + + public async Task DeleteAsync(Guid id, CancellationToken cancellationToken = default) + { + var auditLog = await _auditLogRepository.FindAsync(model => model.Id == id, cancellationToken: cancellationToken); + if (null == auditLog) + { + throw new UserFriendlyException(L["AuditLogNotFound", id]); + } + + await _auditLogRepository.DeleteAsync(auditLog, cancellationToken: cancellationToken); + } + + public async Task> GetEntityChangePageListAsync(GetEntityChangesInput input, CancellationToken cancellationToken = default) + { + var entityChange = await _auditLogRepository.GetEntityChangeListAsync( + input.Sorting, + input.MaxResultCount, + input.SkipCount, + input.AuditLogId, + input.StartTime, + input.SndTime, + input.ChangeType, + input.EntityId, + input.EntityTypeFullName, + input.IncludeDetails, + cancellationToken); + + var datas = ObjectMapper.Map, List>(entityChange); + + return new ListResultDto(datas); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLogs/Mappers/AuditLogApplicationAutoMapperProfile.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLogs/Mappers/AuditLogApplicationAutoMapperProfile.cs new file mode 100644 index 00000000..2e0e741f --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/AuditLogs/Mappers/AuditLogApplicationAutoMapperProfile.cs @@ -0,0 +1,17 @@ +using AutoMapper; +using Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos; +using Volo.Abp.AuditLogging; + +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs.Mappers +{ + public class AuditLogApplicationAutoMapperProfile : Profile + { + public AuditLogApplicationAutoMapperProfile() + { + CreateMap(); + CreateMap(); + CreateMap(); + CreateMap(); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/Lion.AbpPro.AuditLoggingManagement.Application.csproj b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/Lion.AbpPro.AuditLoggingManagement.Application.csproj new file mode 100644 index 00000000..067742a3 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Application/Lion.AbpPro.AuditLoggingManagement.Application.csproj @@ -0,0 +1,17 @@ + + + + net6.0 + enable + Lion.AbpPro.AuditLoggingManagement + + + + + + + + + + + diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/AuditLogManagementDomainErrorCodes.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/AuditLogManagementDomainErrorCodes.cs new file mode 100644 index 00000000..c3456ca4 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/AuditLogManagementDomainErrorCodes.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Lion.AbpPro.AuditLoggingManagement.Domain.Shared +{ + public class AuditLogManagementDomainErrorCodes + { + public static class AuditLog + { + //public const string IdAlreadyExist = "DataDictionaryManagement:DataDictionary:0001"; + //public const string IdNotExist = "DataDictionaryManagement:DataDictionary:0002"; + //public const string CodeAlreadyExist = "DataDictionaryManagement:DataDictionary:0003"; + //public const string CodeNotExist = "DataDictionaryManagement:DataDictionary:0004"; + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/AuditLoggManagementDomainSharedModule.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/AuditLoggManagementDomainSharedModule.cs new file mode 100644 index 00000000..3e086b4e --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/AuditLoggManagementDomainSharedModule.cs @@ -0,0 +1,39 @@ +using Lion.AbpPro.AuditLoggingManagement.Domain.Shared.Localization; +using Volo.Abp.AuditLogging; +using Volo.Abp.Localization; +using Volo.Abp.Localization.ExceptionHandling; +using Volo.Abp.Localization.Resources.AbpLocalization; +using Volo.Abp.Modularity; +using Volo.Abp.Validation; +using Volo.Abp.Validation.Localization; +using Volo.Abp.VirtualFileSystem; + +namespace Lion.AbpPro.AuditLoggingManagement.Domain.Shared +{ + [DependsOn( + typeof(AbpValidationModule), + typeof(AbpAuditLoggingDomainSharedModule) + )] + public class AuditLoggManagementDomainSharedModule : AbpModule + { + public override void ConfigureServices(ServiceConfigurationContext context) + { + Configure(options => + { + options.FileSets.AddEmbedded(typeof(AuditLoggManagementDomainSharedModule).Namespace); + }); + + Configure(options => + { + options.Resources + .Add("zh-Hans") + .AddVirtualJson("/Localization/AuditLogManagement"); + }); + + Configure(options => + { + options.MapCodeNamespace("AuditLogManagement", typeof(AuditLogManagementResource)); + }); + } + } +} \ No newline at end of file diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Lion.AbpPro.AuditLoggingManagement.Domain.Shared.csproj b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Lion.AbpPro.AuditLoggingManagement.Domain.Shared.csproj new file mode 100644 index 00000000..4fabe799 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Lion.AbpPro.AuditLoggingManagement.Domain.Shared.csproj @@ -0,0 +1,24 @@ + + + + net6.0 + enable + enable + + + + + + + + + + + + + + + + + + diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagement/en.json b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagement/en.json new file mode 100644 index 00000000..45a4f652 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagement/en.json @@ -0,0 +1,6 @@ +{ + "culture": "en", + "texts": { + "AuditLogNotFound": "AuditLog Id: {0} does not exist!" + } +} \ No newline at end of file diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagement/zh-Hans.json b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagement/zh-Hans.json new file mode 100644 index 00000000..bec38b4a --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagement/zh-Hans.json @@ -0,0 +1,6 @@ +{ + "culture": "zh-Hans", + "texts": { + "AuditLogNotFound": "审计日志Id:{0}不存在" + } +} \ No newline at end of file diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagementResource.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagementResource.cs new file mode 100644 index 00000000..ef8cbdf2 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.Domain.Shared/Localization/AuditLogManagementResource.cs @@ -0,0 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Volo.Abp.Localization; + +namespace Lion.AbpPro.AuditLoggingManagement.Domain.Shared.Localization +{ + [LocalizationResourceName("AuditLogManagement")] + public class AuditLogManagementResource + { + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client/AuditLoggingManagementHttpApiClientModule.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client/AuditLoggingManagementHttpApiClientModule.cs new file mode 100644 index 00000000..f2a73f71 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client/AuditLoggingManagementHttpApiClientModule.cs @@ -0,0 +1,18 @@ +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Modularity; + +namespace Lion.AbpPro.AuditLoggingManagement +{ + public class AuditLoggingManagementHttpApiClientModule : AbpModule + { + public const string RemoteServiceName = "AuditLoggingManagement"; + + public override void ConfigureServices(ServiceConfigurationContext context) + { + context.Services.AddHttpClientProxies( + typeof(AuditLoggingManagementApplicationContractsModule).Assembly, + RemoteServiceName + ); + } + } +} \ No newline at end of file diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client.csproj b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client.csproj new file mode 100644 index 00000000..3320c753 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client/Lion.AbpPro.AuditLoggingManagement.HttpApi.Client.csproj @@ -0,0 +1,16 @@ + + + + net6.0 + enable + Lion.AbpPro.AuditLoggingManagement + + + + + + + + + + diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/AuditLoggingManagementHttpApiModule.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/AuditLoggingManagementHttpApiModule.cs new file mode 100644 index 00000000..8c847343 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/AuditLoggingManagementHttpApiModule.cs @@ -0,0 +1,22 @@ +using Volo.Abp.AspNetCore.Mvc; +using Volo.Abp.Localization; +using Volo.Abp.Modularity; + +namespace Lion.AbpPro.AuditLoggingManagement +{ + [DependsOn( + typeof(AuditLoggingManagementApplicationContractsModule), + typeof(AbpAspNetCoreMvcModule))] + public class AuditLoggingManagementHttpApiModule : AbpModule + { + public override void ConfigureServices(ServiceConfigurationContext context) + { + Configure(options => + { + //options.Resources + // .Get() + // .AddBaseTypes(typeof(AbpUiResource)); + }); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/AuditLogs/AuditLogController.cs b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/AuditLogs/AuditLogController.cs new file mode 100644 index 00000000..9bdc770a --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/AuditLogs/AuditLogController.cs @@ -0,0 +1,51 @@ +using Lion.AbpPro.AuditLoggingManagement.AuditLogs.Dtos; +using Microsoft.AspNetCore.Mvc; +using Swashbuckle.AspNetCore.Annotations; +using Volo.Abp.Application.Dtos; +using Volo.Abp.AspNetCore.Mvc; + +namespace Lion.AbpPro.AuditLoggingManagement.AuditLogs +{ + [Route("api/auditlog-management/auditlogs")] + public class AuditLogController : AbpController, IAuditLogAppService + { + private IAuditLogAppService _auditLogAppService; + + public AuditLogController(IAuditLogAppService auditLogAppService) + { + _auditLogAppService = auditLogAppService; + } + + [HttpPost] + [Route("delete/{id}")] + [SwaggerOperation(summary: "通过审计日志Id删除审计日志", Tags = new[] { "Auditlogs" })] + public async Task DeleteAsync(Guid id, CancellationToken cancellationToken = default) + { + await _auditLogAppService.DeleteAsync(id, cancellationToken); + } + + [HttpPost] + [Route("page")] + [SwaggerOperation(summary: "分页获取审计日志", Tags = new[] { "Auditlogs" })] + public async Task> GetPageListAsync(GetAuditLogsInput input, CancellationToken cancellationToken = default) + { + return await _auditLogAppService.GetPageListAsync(input, cancellationToken); + } + + [HttpPost] + [Route("detail/{id}")] + [SwaggerOperation(summary: "通过审计日志Id查找审计日志详情", Tags = new[] { "Auditlogs" })] + public async Task GetAsync(Guid id, CancellationToken cancellationToken = default) + { + return await _auditLogAppService.GetAsync(id, cancellationToken); + } + + [HttpPost] + [Route("page-entity-changes")] + [SwaggerOperation(summary: "查询实体变化", Tags = new[] { "Auditlogs" })] + public async Task> GetEntityChangePageListAsync(GetEntityChangesInput input, CancellationToken cancellationToken = default) + { + return await _auditLogAppService.GetEntityChangePageListAsync(input, cancellationToken); + } + } +} diff --git a/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/Lion.AbpPro.AuditLoggingManagement.HttpApi.csproj b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/Lion.AbpPro.AuditLoggingManagement.HttpApi.csproj new file mode 100644 index 00000000..573d44e5 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/src/Lion.AbpPro.AuditLoggingManagement.HttpApi/Lion.AbpPro.AuditLoggingManagement.HttpApi.csproj @@ -0,0 +1,18 @@ + + + + net6.0 + enable + Lion.AbpPro.AuditLoggingManagement + + + + + + + + + + + + diff --git a/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.Application.Tests/Lion.AbpPro.AuditLoggingManagement.Application.Tests.csproj b/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.Application.Tests/Lion.AbpPro.AuditLoggingManagement.Application.Tests.csproj new file mode 100644 index 00000000..99e24b55 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.Application.Tests/Lion.AbpPro.AuditLoggingManagement.Application.Tests.csproj @@ -0,0 +1,23 @@ + + + + net6.0 + enable + + false + + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + + diff --git a/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.Application.Tests/UnitTest1.cs b/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.Application.Tests/UnitTest1.cs new file mode 100644 index 00000000..800d81c3 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.Application.Tests/UnitTest1.cs @@ -0,0 +1,13 @@ +using Xunit; + +namespace Lion.AbpPro.AuditLoggingManagement.Application.Tests +{ + public class UnitTest1 + { + [Fact] + public void Test1() + { + + } + } +} \ No newline at end of file diff --git a/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.TestBase/Lion.AbpPro.AuditLoggingManagement.TestBase.csproj b/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.TestBase/Lion.AbpPro.AuditLoggingManagement.TestBase.csproj new file mode 100644 index 00000000..99e24b55 --- /dev/null +++ b/aspnet-core/modules/AuditLoggingManagement/test/Lion.AbpPro.AuditLoggingManagement.TestBase/Lion.AbpPro.AuditLoggingManagement.TestBase.csproj @@ -0,0 +1,23 @@ + + + + net6.0 + enable + + false + + + + + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + runtime; build; native; contentfiles; analyzers; buildtransitive + all + + + +