Merge branch 'Dev' of https://github.com/dotnet/eShopOnContainers.git
This commit is contained in:
commit
d5e0b783ab
@ -32,18 +32,12 @@ Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.API", "src\Service
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.Domain", "src\Services\Ordering\Ordering.Domain\Ordering.Domain.xproj", "{F5598DCB-6DDE-4661-AD9D-A55612DA7E76}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.SqlData", "src\Services\Ordering\Ordering.SqlData\Ordering.SqlData.xproj", "{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{A857AD10-40FF-4303-BEC2-FF1C58D5735E}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Services", "Services", "{EF0337F2-ED00-4643-89FD-EE10863F1870}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.Test", "test\Services\Ordering.Test\Ordering.Test.xproj", "{A0AFC432-3846-4B4E-BD8E-3C8C896F4967}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Console App", "Console App", "{48FC45C5-223F-4B59-AC77-6CBB1C561E85}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "eShopConsole", "src\Console\eShopConsole\eShopConsole.xproj", "{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "eShopOnContainers.WebMVC", "src\Web\WebMVC\eShopOnContainers.WebMVC.xproj", "{F0333D8E-0B27-42B7-B2C6-78F3657624E2}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.Core", "src\Mobile\eShopOnContainers\eShopOnContainers.Core\eShopOnContainers.Core.csproj", "{65116D1C-145B-4693-ABDA-F0FB6F425191}"
|
||||
@ -69,6 +63,9 @@ EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.Windows", "src\Mobile\eShopOnContainers\eShopOnContainers.TestRunner.Windows\eShopOnContainers.TestRunner.Windows.csproj", "{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.iOS", "src\Mobile\eShopOnContainers\eShopOnContainers.TestRunner.iOS\eShopOnContainers.TestRunner.iOS.csproj", "{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}"
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.Application", "src\Services\Ordering\Ordering.Application\Ordering.Application.xproj", "{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}"
|
||||
EndProject
|
||||
Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.Infrastructure", "src\Services\Ordering\Ordering.Infrastructure\Ordering.Infrastructure.xproj", "{95F1F07C-4D92-4742-BD07-E5B805AAB651}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@ -202,32 +199,6 @@ Global
|
||||
{F5598DCB-6DDE-4661-AD9D-A55612DA7E76}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{F5598DCB-6DDE-4661-AD9D-A55612DA7E76}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{F5598DCB-6DDE-4661-AD9D-A55612DA7E76}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{A0AFC432-3846-4B4E-BD8E-3C8C896F4967}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A0AFC432-3846-4B4E-BD8E-3C8C896F4967}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{A0AFC432-3846-4B4E-BD8E-3C8C896F4967}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
@ -254,32 +225,6 @@ Global
|
||||
{A0AFC432-3846-4B4E-BD8E-3C8C896F4967}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{A0AFC432-3846-4B4E-BD8E-3C8C896F4967}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{A0AFC432-3846-4B4E-BD8E-3C8C896F4967}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{F0333D8E-0B27-42B7-B2C6-78F3657624E2}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F0333D8E-0B27-42B7-B2C6-78F3657624E2}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{F0333D8E-0B27-42B7-B2C6-78F3657624E2}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
@ -499,6 +444,8 @@ Global
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|ARM.Deploy.0 = Debug|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.ActiveCfg = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.Build.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.Deploy.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|x64.Build.0 = Debug|x64
|
||||
@ -566,6 +513,7 @@ Global
|
||||
{9842DB3A-1391-48C7-A49C-2FABD0A18AC2}.Release|x64.Build.0 = Release|Any CPU
|
||||
{9842DB3A-1391-48C7-A49C-2FABD0A18AC2}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{9842DB3A-1391-48C7-A49C-2FABD0A18AC2}.Release|x86.Build.0 = Release|Any CPU
|
||||
<<<<<<< HEAD
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
@ -727,6 +675,8 @@ Global
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|ARM.Deploy.0 = Debug|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhone.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhone.Build.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhone.Deploy.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x64.Build.0 = Debug|x64
|
||||
@ -778,6 +728,104 @@ Global
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|x64.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|x86.ActiveCfg = Release|iPhone
|
||||
=======
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|x64.Build.0 = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7}.Release|x86.Build.0 = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|Any CPU.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|ARM.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|ARM.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|iPhone.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|x64.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|x64.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|x86.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.AppStore|x86.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x64.Build.0 = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651}.Release|x86.Build.0 = Release|Any CPU
|
||||
>>>>>>> OrderingRefactoring
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -793,11 +841,8 @@ Global
|
||||
{42681D9D-750A-4DF7-BD9F-9292CFD5C253} = {326A7FB3-5295-468C-A4FE-67DCB823E1E5}
|
||||
{231226CE-690B-4979-8870-9A79D80928E2} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{F5598DCB-6DDE-4661-AD9D-A55612DA7E76} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{5DA6EF13-C7E0-4EC4-8599-A61C6AC2628D} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{EF0337F2-ED00-4643-89FD-EE10863F1870} = {A857AD10-40FF-4303-BEC2-FF1C58D5735E}
|
||||
{A0AFC432-3846-4B4E-BD8E-3C8C896F4967} = {EF0337F2-ED00-4643-89FD-EE10863F1870}
|
||||
{48FC45C5-223F-4B59-AC77-6CBB1C561E85} = {932D8224-11F6-4D07-B109-DA28AD288A63}
|
||||
{C10C7B69-CE4F-4167-928E-33B7FA1DFFC7} = {48FC45C5-223F-4B59-AC77-6CBB1C561E85}
|
||||
{F0333D8E-0B27-42B7-B2C6-78F3657624E2} = {E279BF0F-7F66-4F3A-A3AB-2CDA66C1CD04}
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191} = {778289CA-31F7-4464-8C2A-612EE846F8A7}
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24} = {9CC7814B-72A6-465B-A61C-57B512DEE303}
|
||||
@ -806,10 +851,15 @@ Global
|
||||
{778289CA-31F7-4464-8C2A-612EE846F8A7} = {F61357CE-1CC2-410E-8776-B16EEBC98EB8}
|
||||
{9CC7814B-72A6-465B-A61C-57B512DEE303} = {F61357CE-1CC2-410E-8776-B16EEBC98EB8}
|
||||
{9842DB3A-1391-48C7-A49C-2FABD0A18AC2} = {E279BF0F-7F66-4F3A-A3AB-2CDA66C1CD04}
|
||||
<<<<<<< HEAD
|
||||
{B7B1D395-4E06-4036-BE86-C216756B9367} = {A857AD10-40FF-4303-BEC2-FF1C58D5735E}
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7} = {B7B1D395-4E06-4036-BE86-C216756B9367}
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1} = {B7B1D395-4E06-4036-BE86-C216756B9367}
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F} = {B7B1D395-4E06-4036-BE86-C216756B9367}
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3} = {B7B1D395-4E06-4036-BE86-C216756B9367}
|
||||
=======
|
||||
{4193CAA3-A1C3-4818-A06F-A2D85FDE77E7} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
{95F1F07C-4D92-4742-BD07-E5B805AAB651} = {0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}
|
||||
>>>>>>> OrderingRefactoring
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
@ -7,6 +7,6 @@
|
||||
],
|
||||
|
||||
"sdk": {
|
||||
"version": "1.0.0-preview2-003121"
|
||||
"version": "1.0.0-preview2-003131"
|
||||
}
|
||||
}
|
||||
|
@ -12,60 +12,60 @@ namespace eShopConsole
|
||||
{
|
||||
public static void Main(string[] args)
|
||||
{
|
||||
// All contexts that share the same service provider will share the same database
|
||||
//// All contexts that share the same service provider will share the same database
|
||||
|
||||
//Using InMemory DB
|
||||
//var options = DbContextUtil.CreateNewContextOptionsForInMemoryDB();
|
||||
////Using InMemory DB
|
||||
////var options = DbContextUtil.CreateNewContextOptionsForInMemoryDB();
|
||||
|
||||
//Using Sql Server
|
||||
var options = DbContextUtil.CreateNewContextOptionsForSqlDb();
|
||||
////Using Sql Server
|
||||
//var options = DbContextUtil.CreateNewContextOptionsForSqlDb();
|
||||
|
||||
// Run the test against one instance of the context
|
||||
using (var context = new OrderingDbContext(options))
|
||||
{
|
||||
IOrderRepository orderRepository = new OrderRepository(context);
|
||||
//// Run the test against one instance of the context
|
||||
//using (var context = new OrderingDbContext(options))
|
||||
//{
|
||||
// IOrderRepository orderRepository = new OrderRepository(context);
|
||||
|
||||
//Create generic Address ValueObject
|
||||
Address sampleAddress = new Address("15703 NE 61st Ct.",
|
||||
"Redmond",
|
||||
"Washington",
|
||||
"WA",
|
||||
"United States",
|
||||
"US",
|
||||
"98052",
|
||||
47.661492,
|
||||
-122.131309
|
||||
);
|
||||
//Create sample Orders
|
||||
Order order1 = new Order(Guid.NewGuid(), sampleAddress, sampleAddress);
|
||||
// //Create generic Address ValueObject
|
||||
// Address sampleAddress = new Address("15703 NE 61st Ct.",
|
||||
// "Redmond",
|
||||
// "Washington",
|
||||
// "WA",
|
||||
// "United States",
|
||||
// "US",
|
||||
// "98052",
|
||||
// 47.661492,
|
||||
// -122.131309
|
||||
// );
|
||||
// //Create sample Orders
|
||||
// Order order1 = new Order(Guid.NewGuid(), sampleAddress, sampleAddress);
|
||||
|
||||
//Add a few OrderItems
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 2, 25, 30);
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 1, 58, 0);
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 1, 60, 0);
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 3, 12, 0);
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 5, 3, 0);
|
||||
// //Add a few OrderItems
|
||||
// order1.AddNewOrderItem(Guid.NewGuid(), 2, 25, 30);
|
||||
// order1.AddNewOrderItem(Guid.NewGuid(), 1, 58, 0);
|
||||
// order1.AddNewOrderItem(Guid.NewGuid(), 1, 60, 0);
|
||||
// order1.AddNewOrderItem(Guid.NewGuid(), 3, 12, 0);
|
||||
// order1.AddNewOrderItem(Guid.NewGuid(), 5, 3, 0);
|
||||
|
||||
orderRepository.Add(order1);
|
||||
orderRepository.UnitOfWork.CommitAsync();
|
||||
// orderRepository.Add(order1);
|
||||
// orderRepository.UnitOfWork.CommitAsync();
|
||||
|
||||
//With no Async Repository
|
||||
//context.Orders.Add(order1);
|
||||
//context.SaveChanges();
|
||||
// //With no Async Repository
|
||||
// //context.Orders.Add(order1);
|
||||
// //context.SaveChanges();
|
||||
|
||||
}
|
||||
//}
|
||||
|
||||
//// Use a separate instance of the context to verify correct data was saved to database
|
||||
using (var context = new OrderingDbContext(options))
|
||||
{
|
||||
var orders = context.Orders
|
||||
.Include(o => o.ShippingAddress)
|
||||
.Include(o => o.BillingAddress)
|
||||
.ToList();
|
||||
////// Use a separate instance of the context to verify correct data was saved to database
|
||||
//using (var context = new OrderingDbContext(options))
|
||||
//{
|
||||
// var orders = context.Orders
|
||||
// .Include(o => o.ShippingAddress)
|
||||
// .Include(o => o.BillingAddress)
|
||||
// .ToList();
|
||||
|
||||
string cityName = orders.First<Order>().ShippingAddress.City;
|
||||
Console.WriteLine("City name retreived from SQL Server: "+cityName);
|
||||
}
|
||||
// string cityName = orders.First<Order>().ShippingAddress.City;
|
||||
// Console.WriteLine("City name retreived from SQL Server: "+cityName);
|
||||
//}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -10,9 +10,7 @@
|
||||
"type": "platform",
|
||||
"version": "1.0.0"
|
||||
},
|
||||
"Ordering.API": "1.0.0-*",
|
||||
"Ordering.Domain": "1.0.0-*",
|
||||
"Ordering.SqlData": "1.0.0-*"
|
||||
},
|
||||
"frameworks": {
|
||||
"netcoreapp1.0": {
|
||||
|
505
src/Mobile/eShopOnContainers.Xamarin.Tests.sln
Normal file
505
src/Mobile/eShopOnContainers.Xamarin.Tests.sln
Normal file
@ -0,0 +1,505 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 14
|
||||
VisualStudioVersion = 14.0.25420.1
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.Droid", "eShopOnContainers\eShopOnContainers.Droid\eShopOnContainers.Droid.csproj", "{62DBB163-9CA9-4818-B48B-13233DF37C24}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.iOS", "eShopOnContainers\eShopOnContainers.iOS\eShopOnContainers.iOS.csproj", "{6EEB23DC-7063-4444-9AF8-90DF24F549C0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.Core", "eShopOnContainers\eShopOnContainers.Core\eShopOnContainers.Core.csproj", "{65116D1C-145B-4693-ABDA-F0FB6F425191}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.Windows", "eShopOnContainers\eShopOnContainers.Windows\eShopOnContainers.Windows.csproj", "{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared Code", "Shared Code", "{65D002E7-E869-491C-ABA8-9650CEAF677A}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Targets", "Targets", "{8F848898-6B21-4905-AE2E-B3ABDEDA1963}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{71D6317D-AF0F-46FE-91DA-B0556911FC4B}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.UnitTests", "eShopOnContainers\eShopOnContainers.UnitTests\eShopOnContainers.UnitTests.csproj", "{F7B6A162-BC4D-4924-B16A-713F9B0344E7}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.Droid", "eShopOnContainers\eShopOnContainers.TestRunner.Droid\eShopOnContainers.TestRunner.Droid.csproj", "{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.iOS", "eShopOnContainers\eShopOnContainers.TestRunner.iOS\eShopOnContainers.TestRunner.iOS.csproj", "{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.Windows", "eShopOnContainers\eShopOnContainers.TestRunner.Windows\eShopOnContainers.TestRunner.Windows.csproj", "{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Ad-Hoc|Any CPU = Ad-Hoc|Any CPU
|
||||
Ad-Hoc|ARM = Ad-Hoc|ARM
|
||||
Ad-Hoc|iPhone = Ad-Hoc|iPhone
|
||||
Ad-Hoc|iPhoneSimulator = Ad-Hoc|iPhoneSimulator
|
||||
Ad-Hoc|x64 = Ad-Hoc|x64
|
||||
Ad-Hoc|x86 = Ad-Hoc|x86
|
||||
AppStore|Any CPU = AppStore|Any CPU
|
||||
AppStore|ARM = AppStore|ARM
|
||||
AppStore|iPhone = AppStore|iPhone
|
||||
AppStore|iPhoneSimulator = AppStore|iPhoneSimulator
|
||||
AppStore|x64 = AppStore|x64
|
||||
AppStore|x86 = AppStore|x86
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|ARM = Debug|ARM
|
||||
Debug|iPhone = Debug|iPhone
|
||||
Debug|iPhoneSimulator = Debug|iPhoneSimulator
|
||||
Debug|x64 = Debug|x64
|
||||
Debug|x86 = Debug|x86
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|ARM = Release|ARM
|
||||
Release|iPhone = Release|iPhone
|
||||
Release|iPhoneSimulator = Release|iPhoneSimulator
|
||||
Release|x64 = Release|x64
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|ARM.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|iPhone.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|x64.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Ad-Hoc|x86.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|ARM.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|iPhone.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|x64.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.AppStore|x86.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|ARM.Deploy.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|iPhone.Deploy.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|iPhoneSimulator.Deploy.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|x64.Deploy.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Debug|x86.Deploy.0 = Debug|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|ARM.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|iPhone.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|x64.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|x64.Deploy.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|x86.Build.0 = Release|Any CPU
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24}.Release|x86.Deploy.0 = Release|Any CPU
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Ad-Hoc|Any CPU.ActiveCfg = Ad-Hoc|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Ad-Hoc|ARM.ActiveCfg = Ad-Hoc|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Ad-Hoc|iPhone.ActiveCfg = Ad-Hoc|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Ad-Hoc|iPhone.Build.0 = Ad-Hoc|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Ad-Hoc|iPhoneSimulator
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Ad-Hoc|iPhoneSimulator.Build.0 = Ad-Hoc|iPhoneSimulator
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Ad-Hoc|x64.ActiveCfg = Ad-Hoc|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Ad-Hoc|x86.ActiveCfg = Ad-Hoc|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.AppStore|Any CPU.ActiveCfg = AppStore|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.AppStore|ARM.ActiveCfg = AppStore|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.AppStore|iPhone.ActiveCfg = AppStore|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.AppStore|iPhone.Build.0 = AppStore|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.AppStore|iPhoneSimulator.ActiveCfg = AppStore|iPhoneSimulator
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.AppStore|iPhoneSimulator.Build.0 = AppStore|iPhoneSimulator
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.AppStore|x64.ActiveCfg = AppStore|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.AppStore|x86.ActiveCfg = AppStore|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|Any CPU.ActiveCfg = Debug|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|Any CPU.Build.0 = Debug|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|ARM.ActiveCfg = Debug|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|iPhone.ActiveCfg = Debug|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|iPhone.Build.0 = Debug|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|x64.ActiveCfg = Debug|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Debug|x86.ActiveCfg = Debug|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Release|Any CPU.ActiveCfg = Release|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Release|ARM.ActiveCfg = Release|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Release|iPhone.ActiveCfg = Release|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Release|iPhone.Build.0 = Release|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Release|x64.ActiveCfg = Release|iPhone
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0}.Release|x86.ActiveCfg = Release|iPhone
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|x64.Build.0 = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191}.Release|x86.Build.0 = Release|Any CPU
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|Any CPU.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|Any CPU.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|Any CPU.Deploy.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|ARM.ActiveCfg = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|ARM.Build.0 = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|ARM.Deploy.0 = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|iPhone.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|iPhone.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|iPhone.Deploy.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|x64.ActiveCfg = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|x64.Build.0 = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|x64.Deploy.0 = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|x86.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|x86.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Ad-Hoc|x86.Deploy.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|Any CPU.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|Any CPU.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|Any CPU.Deploy.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|ARM.ActiveCfg = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|ARM.Build.0 = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|ARM.Deploy.0 = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|iPhone.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|iPhone.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|iPhone.Deploy.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|iPhoneSimulator.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|iPhoneSimulator.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|iPhoneSimulator.Deploy.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|x64.ActiveCfg = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|x64.Build.0 = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|x64.Deploy.0 = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|x86.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|x86.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.AppStore|x86.Deploy.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|Any CPU.Build.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|Any CPU.Deploy.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|ARM.Deploy.0 = Debug|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.ActiveCfg = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.Build.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.Deploy.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhoneSimulator.Build.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhoneSimulator.Deploy.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|x64.Build.0 = Debug|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|x64.Deploy.0 = Debug|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|x86.Build.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|x86.Deploy.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|ARM.Build.0 = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|ARM.Deploy.0 = Release|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|iPhone.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|iPhoneSimulator.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x64.ActiveCfg = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x64.Build.0 = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x64.Deploy.0 = Release|x64
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x86.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x86.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x86.Deploy.0 = Release|x86
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|x64.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|x86.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|ARM.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhone.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x64.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x86.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|ARM.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhone.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x64.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x86.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|ARM.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhone.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhoneSimulator.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x64.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x86.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|ARM.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhone.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x64.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x64.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x86.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x86.Deploy.0 = Release|Any CPU
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|Any CPU.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|ARM.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|iPhone.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|iPhone.Build.0 = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Ad-Hoc|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|iPhoneSimulator.Build.0 = Ad-Hoc|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|x64.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|x86.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|Any CPU.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|ARM.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|iPhone.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|iPhone.Build.0 = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|iPhoneSimulator.ActiveCfg = AppStore|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|iPhoneSimulator.Build.0 = AppStore|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|x64.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|x86.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|Any CPU.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|ARM.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|iPhone.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|iPhone.Build.0 = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|x64.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|x86.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|Any CPU.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|ARM.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhone.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhone.Build.0 = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|x64.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|x86.ActiveCfg = Release|iPhone
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|Any CPU.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|Any CPU.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|Any CPU.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|ARM.ActiveCfg = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|ARM.Build.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|ARM.Deploy.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhone.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhone.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhone.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x64.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x64.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x64.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x86.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x86.Build.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x86.Deploy.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|Any CPU.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|Any CPU.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|Any CPU.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|ARM.ActiveCfg = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|ARM.Build.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|ARM.Deploy.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhone.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhone.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhone.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhoneSimulator.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhoneSimulator.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhoneSimulator.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x64.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x64.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x64.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x86.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x86.Build.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x86.Deploy.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|ARM.Deploy.0 = Debug|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhone.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhone.Build.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhone.Deploy.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhoneSimulator.Build.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhoneSimulator.Deploy.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x64.Build.0 = Debug|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x64.Deploy.0 = Debug|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x86.Build.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x86.Deploy.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|ARM.Build.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|ARM.Deploy.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|iPhone.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|iPhoneSimulator.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x64.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x64.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x64.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.Build.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.Deploy.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{62DBB163-9CA9-4818-B48B-13233DF37C24} = {8F848898-6B21-4905-AE2E-B3ABDEDA1963}
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0} = {8F848898-6B21-4905-AE2E-B3ABDEDA1963}
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191} = {65D002E7-E869-491C-ABA8-9650CEAF677A}
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B} = {8F848898-6B21-4905-AE2E-B3ABDEDA1963}
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -15,16 +15,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared Code", "Shared Code"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Targets", "Targets", "{8F848898-6B21-4905-AE2E-B3ABDEDA1963}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{71D6317D-AF0F-46FE-91DA-B0556911FC4B}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.UnitTests", "eShopOnContainers\eShopOnContainers.UnitTests\eShopOnContainers.UnitTests.csproj", "{F7B6A162-BC4D-4924-B16A-713F9B0344E7}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.Droid", "eShopOnContainers\eShopOnContainers.TestRunner.Droid\eShopOnContainers.TestRunner.Droid.csproj", "{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.iOS", "eShopOnContainers\eShopOnContainers.TestRunner.iOS\eShopOnContainers.TestRunner.iOS.csproj", "{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.Windows", "eShopOnContainers\eShopOnContainers.TestRunner.Windows\eShopOnContainers.TestRunner.Windows.csproj", "{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Ad-Hoc|Any CPU = Ad-Hoc|Any CPU
|
||||
@ -249,6 +239,8 @@ Global
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|ARM.Deploy.0 = Debug|ARM
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.ActiveCfg = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.Build.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhone.Deploy.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhoneSimulator.Build.0 = Debug|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Debug|iPhoneSimulator.Deploy.0 = Debug|x86
|
||||
@ -270,220 +262,6 @@ Global
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x86.ActiveCfg = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x86.Build.0 = Release|x86
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B}.Release|x86.Deploy.0 = Release|x86
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|x64.Build.0 = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7}.Release|x86.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|ARM.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhone.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x64.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x64.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x86.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Ad-Hoc|x86.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|Any CPU.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|ARM.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|ARM.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|ARM.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhone.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhone.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhone.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x64.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x64.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x64.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x86.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x86.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.AppStore|x86.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|ARM.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|ARM.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|ARM.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhone.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhone.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhone.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|iPhoneSimulator.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x64.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Debug|x86.Deploy.0 = Debug|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|Any CPU.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|ARM.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|ARM.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|ARM.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhone.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhone.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhone.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|iPhoneSimulator.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x64.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x64.Deploy.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x86.Build.0 = Release|Any CPU
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1}.Release|x86.Deploy.0 = Release|Any CPU
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|Any CPU.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|ARM.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|iPhone.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|iPhone.Build.0 = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Ad-Hoc|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|iPhoneSimulator.Build.0 = Ad-Hoc|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|x64.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Ad-Hoc|x86.ActiveCfg = Ad-Hoc|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|Any CPU.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|ARM.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|iPhone.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|iPhone.Build.0 = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|iPhoneSimulator.ActiveCfg = AppStore|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|iPhoneSimulator.Build.0 = AppStore|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|x64.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.AppStore|x86.ActiveCfg = AppStore|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|Any CPU.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|ARM.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|iPhone.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|iPhone.Build.0 = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|x64.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Debug|x86.ActiveCfg = Debug|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|Any CPU.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|ARM.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhone.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhone.Build.0 = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|x64.ActiveCfg = Release|iPhone
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3}.Release|x86.ActiveCfg = Release|iPhone
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|Any CPU.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|Any CPU.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|Any CPU.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|ARM.ActiveCfg = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|ARM.Build.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|ARM.Deploy.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhone.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhone.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhone.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x64.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x64.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x64.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x86.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x86.Build.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Ad-Hoc|x86.Deploy.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|Any CPU.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|Any CPU.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|Any CPU.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|ARM.ActiveCfg = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|ARM.Build.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|ARM.Deploy.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhone.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhone.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhone.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhoneSimulator.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhoneSimulator.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|iPhoneSimulator.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x64.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x64.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x64.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x86.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x86.Build.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.AppStore|x86.Deploy.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|ARM.ActiveCfg = Debug|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|ARM.Build.0 = Debug|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|ARM.Deploy.0 = Debug|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhone.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhoneSimulator.Build.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|iPhoneSimulator.Deploy.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x64.Build.0 = Debug|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x64.Deploy.0 = Debug|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x86.Build.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Debug|x86.Deploy.0 = Debug|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|ARM.ActiveCfg = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|ARM.Build.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|ARM.Deploy.0 = Release|ARM
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|iPhone.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|iPhoneSimulator.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x64.ActiveCfg = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x64.Build.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x64.Deploy.0 = Release|x64
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.ActiveCfg = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.Build.0 = Release|x86
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.Deploy.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -493,9 +271,5 @@ Global
|
||||
{6EEB23DC-7063-4444-9AF8-90DF24F549C0} = {8F848898-6B21-4905-AE2E-B3ABDEDA1963}
|
||||
{65116D1C-145B-4693-ABDA-F0FB6F425191} = {65D002E7-E869-491C-ABA8-9650CEAF677A}
|
||||
{C3C1E2CF-B1F7-4654-BBDC-50143DB22E0B} = {8F848898-6B21-4905-AE2E-B3ABDEDA1963}
|
||||
{F7B6A162-BC4D-4924-B16A-713F9B0344E7} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
|
||||
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
|
||||
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
|
||||
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
@ -104,6 +104,7 @@
|
||||
<converters:ItemTappedEventArgsConverter x:Key="ItemTappedEventArgsConverter" />
|
||||
<converters:InverseCountToBoolConverter x:Key="InverseCountToBoolConverter" />
|
||||
<converters:InverseBoolConverter x:Key="InverseBoolConverter" />
|
||||
<converters:ItemsToHeightConverter x:Key="ItemsToHeightConverter" />
|
||||
<converters:ToUpperConverter x:Key="ToUpperConverter" />
|
||||
|
||||
<!-- STYLES -->
|
||||
|
@ -2,7 +2,7 @@
|
||||
<ContentView
|
||||
xmlns="http://xamarin.com/schemas/2014/forms"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
x:Class="eShopOnContainers.Core.Controls.CartButton">
|
||||
x:Class="eShopOnContainers.Core.Controls.AddBasketButton">
|
||||
<ContentView.Resources>
|
||||
<ResourceDictionary>
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
namespace eShopOnContainers.Core.Controls
|
||||
{
|
||||
public partial class CartButton : ContentView
|
||||
public partial class AddBasketButton : ContentView
|
||||
{
|
||||
public CartButton()
|
||||
public AddBasketButton()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace eShopOnContainers.Core.Converters
|
||||
{
|
||||
public class ItemsToHeightConverter : IValueConverter
|
||||
{
|
||||
private const int ItemHeight = 144;
|
||||
|
||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
if(value is int)
|
||||
{
|
||||
return System.Convert.ToInt32(value) * ItemHeight;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
@ -5,5 +5,7 @@
|
||||
public const string RegisterWebsite = "http://104.40.62.65/Account/Register";
|
||||
|
||||
public const string CatalogEndpoint = "http://104.40.62.65:5101/";
|
||||
|
||||
public const string BasketEndpoint = "http://104.40.62.65:5103/";
|
||||
}
|
||||
}
|
@ -0,0 +1,105 @@
|
||||
using eShopOnContainers.Core.Helpers;
|
||||
using eShopOnContainers.Core.ViewModels.Base;
|
||||
using eShopOnContainers.ViewModels.Base;
|
||||
using System;
|
||||
using System.Collections.ObjectModel;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace eShopOnContainers.Core.Models.Basket
|
||||
{
|
||||
public class BasketItem : ExtendedBindableObject
|
||||
{
|
||||
private string _id;
|
||||
private string _productId;
|
||||
private string _productName;
|
||||
private decimal _unitPrice;
|
||||
private int _quantity;
|
||||
private string _pictureUrl;
|
||||
private ObservableCollection<int> _numbers;
|
||||
|
||||
public BasketItem()
|
||||
{
|
||||
Numbers = NumericHelper.GetNumericList();
|
||||
}
|
||||
|
||||
public string Id
|
||||
{
|
||||
get { return _id; }
|
||||
set
|
||||
{
|
||||
_id = value;
|
||||
RaisePropertyChanged(() => Id);
|
||||
}
|
||||
}
|
||||
|
||||
public string ProductId
|
||||
{
|
||||
get { return _productId; }
|
||||
set
|
||||
{
|
||||
_productId = value;
|
||||
RaisePropertyChanged(() => ProductId);
|
||||
}
|
||||
}
|
||||
|
||||
public string ProductName
|
||||
{
|
||||
get { return _productName; }
|
||||
set
|
||||
{
|
||||
_productName = value;
|
||||
RaisePropertyChanged(() => ProductName);
|
||||
}
|
||||
}
|
||||
|
||||
public decimal UnitPrice
|
||||
{
|
||||
get { return _unitPrice; }
|
||||
set
|
||||
{
|
||||
_unitPrice = value;
|
||||
RaisePropertyChanged(() => UnitPrice);
|
||||
}
|
||||
}
|
||||
|
||||
public int Quantity
|
||||
{
|
||||
get { return _quantity; }
|
||||
set
|
||||
{
|
||||
_quantity = value;
|
||||
RaisePropertyChanged(() => Quantity);
|
||||
RaisePropertyChanged(() => Total);
|
||||
|
||||
MessagingCenter.Send(this, MessengerKeys.UpdateProduct);
|
||||
}
|
||||
}
|
||||
|
||||
public string PictureUrl
|
||||
{
|
||||
get { return _pictureUrl; }
|
||||
set
|
||||
{
|
||||
_pictureUrl = value;
|
||||
RaisePropertyChanged(() => PictureUrl);
|
||||
}
|
||||
}
|
||||
|
||||
public decimal Total { get { return Quantity * UnitPrice; } }
|
||||
|
||||
public ObservableCollection<int> Numbers
|
||||
{
|
||||
get { return _numbers; }
|
||||
set
|
||||
{
|
||||
_numbers = value;
|
||||
RaisePropertyChanged(() => Numbers);
|
||||
}
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return String.Format("Product Id: {0}, Quantity: {1}", ProductId, Quantity);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace eShopOnContainers.Core.Models.Basket
|
||||
{
|
||||
public class CustomerBasket
|
||||
{
|
||||
public string BuyerId { get; set; }
|
||||
public List<BasketItem> Items { get; set; }
|
||||
}
|
||||
}
|
@ -10,7 +10,7 @@ namespace eShopOnContainers.Core.Models.Orders
|
||||
public class OrderItem : ExtendedBindableObject
|
||||
{
|
||||
private string _productImage;
|
||||
private int _productId;
|
||||
private string _productId;
|
||||
private Guid _orderId;
|
||||
private string _productName;
|
||||
private decimal _unitPrice;
|
||||
@ -23,7 +23,7 @@ namespace eShopOnContainers.Core.Models.Orders
|
||||
Numbers = NumericHelper.GetNumericList();
|
||||
}
|
||||
|
||||
public int ProductId
|
||||
public string ProductId
|
||||
{
|
||||
get { return _productId; }
|
||||
set
|
||||
|
@ -1,7 +1,10 @@
|
||||
namespace eShopOnContainers.Core.Models.User
|
||||
using System;
|
||||
|
||||
namespace eShopOnContainers.Core.Models.User
|
||||
{
|
||||
public class User
|
||||
{
|
||||
public string GuidUser { get; set; }
|
||||
public string Name { get; set; }
|
||||
public string LastName { get; set; }
|
||||
public string CardNumber { get; set; }
|
||||
|
@ -0,0 +1,42 @@
|
||||
using eShopOnContainers.Core.Models.Basket;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using Xamarin.Forms;
|
||||
using System;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.Basket
|
||||
{
|
||||
public class BasketMockService : IBasketService
|
||||
{
|
||||
private CustomerBasket MockCustomBasket = new CustomerBasket
|
||||
{
|
||||
BuyerId = "9245fe4a-d402-451c-b9ed-9c1a04247482",
|
||||
Items = new List<BasketItem>
|
||||
{
|
||||
new BasketItem { Id = "1", PictureUrl = Device.OS != TargetPlatform.Windows ? "fake_product_01.png" : "Assets/fake_product_01.png", ProductId = "1", ProductName = ".NET Bot Blue Sweatshirt (M)", Quantity = 1, UnitPrice = 19.50M },
|
||||
new BasketItem { Id = "2", PictureUrl = Device.OS != TargetPlatform.Windows ? "fake_product_04.png" : "Assets/fake_product_04.png", ProductId = "4", ProductName = ".NET Black Cupt", Quantity = 1, UnitPrice = 17.00M }
|
||||
}
|
||||
};
|
||||
|
||||
public async Task<CustomerBasket> GetBasketAsync(string guidUser)
|
||||
{
|
||||
await Task.Delay(500);
|
||||
|
||||
if(string.IsNullOrEmpty(guidUser))
|
||||
{
|
||||
return new CustomerBasket();
|
||||
}
|
||||
|
||||
return MockCustomBasket;
|
||||
}
|
||||
|
||||
public async Task<CustomerBasket> UpdateBasketAsync(CustomerBasket customerBasket)
|
||||
{
|
||||
await Task.Delay(500);
|
||||
|
||||
MockCustomBasket = customerBasket;
|
||||
|
||||
return MockCustomBasket;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using eShopOnContainers.Core.Services.RequestProvider;
|
||||
using eShopOnContainers.Core.Models.Basket;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.Basket
|
||||
{
|
||||
public class BasketService : IBasketService
|
||||
{
|
||||
private readonly IRequestProvider _requestProvider;
|
||||
|
||||
public BasketService(IRequestProvider requestProvider)
|
||||
{
|
||||
_requestProvider = requestProvider;
|
||||
}
|
||||
|
||||
public async Task<CustomerBasket> GetBasketAsync(string guidUser)
|
||||
{
|
||||
try
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.BasketEndpoint);
|
||||
|
||||
builder.Path = guidUser;
|
||||
|
||||
string uri = builder.ToString();
|
||||
|
||||
CustomerBasket basket =
|
||||
await _requestProvider.GetAsync<CustomerBasket>(uri);
|
||||
|
||||
return basket;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return new CustomerBasket
|
||||
{
|
||||
BuyerId = guidUser,
|
||||
Items = new System.Collections.Generic.List<BasketItem>()
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
public async Task<CustomerBasket> UpdateBasketAsync(CustomerBasket customerBasket)
|
||||
{
|
||||
UriBuilder builder = new UriBuilder(GlobalSetting.BasketEndpoint);
|
||||
|
||||
string uri = builder.ToString();
|
||||
|
||||
var result = await _requestProvider.PostAsync(uri, customerBasket);
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
using eShopOnContainers.Core.Models.Basket;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.Basket
|
||||
{
|
||||
public interface IBasketService
|
||||
{
|
||||
Task<CustomerBasket> GetBasketAsync(string guidUser);
|
||||
Task<CustomerBasket> UpdateBasketAsync(CustomerBasket customerBasket);
|
||||
}
|
||||
}
|
@ -147,7 +147,7 @@ namespace eShopOnContainers.Services
|
||||
|
||||
private void CreatePageViewModelMappings()
|
||||
{
|
||||
_mappings.Add(typeof(CartViewModel), typeof(CartView));
|
||||
_mappings.Add(typeof(BasketViewModel), typeof(BasketView));
|
||||
_mappings.Add(typeof(CatalogViewModel), typeof(CatalogView));
|
||||
_mappings.Add(typeof(CheckoutViewModel), typeof(CheckoutView));
|
||||
_mappings.Add(typeof(LoginViewModel), typeof(LoginView));
|
||||
|
@ -1,13 +0,0 @@
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.Orders
|
||||
{
|
||||
public interface IOrdersService
|
||||
{
|
||||
Task<ObservableCollection<Order>> GetOrdersAsync();
|
||||
|
||||
Task<Order> GetCartAsync();
|
||||
}
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.Orders
|
||||
{
|
||||
public class OrdersMockService : IOrdersService
|
||||
{
|
||||
public async Task<ObservableCollection<Order>> GetOrdersAsync()
|
||||
{
|
||||
await Task.Delay(500);
|
||||
|
||||
return new ObservableCollection<Order>
|
||||
{
|
||||
new Order { SequenceNumber = 123, Total = 56.40M, OrderDate = DateTime.Now, Status = OrderStatus.Delivered, OrderItems = GetOrderItems() },
|
||||
new Order { SequenceNumber = 132, Total = 56.40M, OrderDate = DateTime.Now, Status = OrderStatus.Delivered, OrderItems = GetOrderItems() },
|
||||
new Order { SequenceNumber = 231, Total = 56.40M, OrderDate = DateTime.Now, Status = OrderStatus.Delivered, OrderItems = GetOrderItems() },
|
||||
};
|
||||
}
|
||||
|
||||
public async Task<Order> GetCartAsync()
|
||||
{
|
||||
await Task.Delay(500);
|
||||
|
||||
return new Order { SequenceNumber = 0123456789, Total = 56.40M, OrderDate = DateTime.Now, Status = OrderStatus.Pending, OrderItems = GetOrderItems() };
|
||||
}
|
||||
|
||||
private List<OrderItem> GetOrderItems()
|
||||
{
|
||||
return new List<OrderItem>
|
||||
{
|
||||
new OrderItem { OrderId = Guid.NewGuid(), ProductId = 1, Discount = 15, ProductName = ".NET Bot Blue Sweatshirt (M)", Quantity = 1, UnitPrice = 16.50M },
|
||||
new OrderItem { OrderId = Guid.NewGuid(), ProductId = 3, Discount = 0, ProductName = ".NET Bot Black Sweatshirt (M)", Quantity = 2, UnitPrice = 19.95M }
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
@ -34,6 +34,7 @@ namespace eShopOnContainers.Core.Services.RequestProvider
|
||||
await HandleResponse(response);
|
||||
|
||||
string serialized = await response.Content.ReadAsStringAsync();
|
||||
|
||||
TResult result = await Task.Run(() =>
|
||||
JsonConvert.DeserializeObject<TResult>(serialized, _serializerSettings));
|
||||
|
||||
@ -91,7 +92,8 @@ namespace eShopOnContainers.Core.Services.RequestProvider
|
||||
{
|
||||
var content = await response.Content.ReadAsStringAsync();
|
||||
|
||||
if (response.StatusCode == HttpStatusCode.Forbidden || response.StatusCode == HttpStatusCode.Unauthorized)
|
||||
if (response.StatusCode == HttpStatusCode.Forbidden
|
||||
|| response.StatusCode == HttpStatusCode.Unauthorized)
|
||||
{
|
||||
throw new ServiceAuthenticationException(content);
|
||||
}
|
||||
|
@ -1,9 +1,12 @@
|
||||
using System.Threading.Tasks;
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.User
|
||||
{
|
||||
public interface IUserService
|
||||
{
|
||||
Task<Models.User.User> GetUserAsync();
|
||||
Task<List<Order>> GetOrdersAsync();
|
||||
}
|
||||
}
|
||||
}
|
@ -1,4 +1,7 @@
|
||||
using System.Threading.Tasks;
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace eShopOnContainers.Core.Services.User
|
||||
{
|
||||
@ -6,6 +9,7 @@ namespace eShopOnContainers.Core.Services.User
|
||||
{
|
||||
private Models.User.User MockUser = new Models.User.User
|
||||
{
|
||||
GuidUser = "9245fe4a-d402-451c-b9ed-9c1a04247482",
|
||||
Name = "Jhon",
|
||||
LastName = "Doe",
|
||||
City = "Seattle, WA",
|
||||
@ -14,11 +18,31 @@ namespace eShopOnContainers.Core.Services.User
|
||||
Country = "United States"
|
||||
};
|
||||
|
||||
private List<Order> MockOrders = new List<Order>()
|
||||
{
|
||||
new Order { SequenceNumber = 123, Total = 56.40M, OrderDate = DateTime.Now, Status = OrderStatus.Delivered, OrderItems = MockOrderItems },
|
||||
new Order { SequenceNumber = 132, Total = 56.40M, OrderDate = DateTime.Now, Status = OrderStatus.Delivered, OrderItems = MockOrderItems },
|
||||
new Order { SequenceNumber = 231, Total = 56.40M, OrderDate = DateTime.Now, Status = OrderStatus.Delivered, OrderItems = MockOrderItems },
|
||||
};
|
||||
|
||||
private static List<OrderItem> MockOrderItems = new List<OrderItem>()
|
||||
{
|
||||
new OrderItem { OrderId = Guid.NewGuid(), ProductId = "1", Discount = 15, ProductName = ".NET Bot Blue Sweatshirt (M)", Quantity = 1, UnitPrice = 16.50M },
|
||||
new OrderItem { OrderId = Guid.NewGuid(), ProductId = "3", Discount = 0, ProductName = ".NET Bot Black Sweatshirt (M)", Quantity = 2, UnitPrice = 19.95M }
|
||||
};
|
||||
|
||||
public async Task<Models.User.User> GetUserAsync()
|
||||
{
|
||||
await Task.Delay(500);
|
||||
|
||||
return MockUser;
|
||||
}
|
||||
|
||||
public async Task<List<Order>> GetOrdersAsync()
|
||||
{
|
||||
await Task.Delay(500);
|
||||
|
||||
return MockOrders;
|
||||
}
|
||||
}
|
||||
}
|
@ -2,10 +2,13 @@
|
||||
{
|
||||
public class MessengerKeys
|
||||
{
|
||||
// Add product to cart
|
||||
// Add product to basket
|
||||
public const string AddProduct = "AddProduct";
|
||||
|
||||
// Update product cart
|
||||
// Update Basket
|
||||
public const string UpdateBasket = "UpdateBasket";
|
||||
|
||||
// Update product basket
|
||||
public const string UpdateProduct = "UpdateProduct";
|
||||
|
||||
// Filter
|
||||
|
@ -1,5 +1,4 @@
|
||||
using Microsoft.Practices.Unity;
|
||||
using eShopOnContainers.Core.Services.Orders;
|
||||
using eShopOnContainers.Core.ViewModels;
|
||||
using eShopOnContainers.Services;
|
||||
using System;
|
||||
@ -7,6 +6,7 @@ using eShopOnContainers.Core.Services.Catalog;
|
||||
using eShopOnContainers.Core.Services.OpenUrl;
|
||||
using eShopOnContainers.Core.Services.User;
|
||||
using eShopOnContainers.Core.Services.RequestProvider;
|
||||
using eShopOnContainers.Core.Services.Basket;
|
||||
|
||||
namespace eShopOnContainers.ViewModels.Base
|
||||
{
|
||||
@ -39,11 +39,11 @@ namespace eShopOnContainers.ViewModels.Base
|
||||
_unityContainer.RegisterType<IRequestProvider, RequestProvider>();
|
||||
|
||||
_unityContainer.RegisterType<ICatalogService, CatalogMockService>();
|
||||
_unityContainer.RegisterType<IOrdersService, OrdersMockService>();
|
||||
_unityContainer.RegisterType<IBasketService, BasketMockService>();
|
||||
_unityContainer.RegisterType<IUserService, UserMockService>();
|
||||
|
||||
// View models
|
||||
_unityContainer.RegisterType<CartViewModel>();
|
||||
_unityContainer.RegisterType<BasketViewModel>();
|
||||
_unityContainer.RegisterType<CatalogViewModel>();
|
||||
_unityContainer.RegisterType<CheckoutViewModel>();
|
||||
_unityContainer.RegisterType<LoginViewModel>();
|
||||
@ -58,7 +58,7 @@ namespace eShopOnContainers.ViewModels.Base
|
||||
if (!useMockServices)
|
||||
{
|
||||
_unityContainer.RegisterInstance<ICatalogService>(new CatalogMockService());
|
||||
_unityContainer.RegisterInstance<IOrdersService>(new OrdersMockService());
|
||||
_unityContainer.RegisterInstance<IBasketService>(new BasketMockService());
|
||||
_unityContainer.RegisterInstance<IUserService>(new UserMockService());
|
||||
|
||||
UseMockService = false;
|
||||
@ -67,6 +67,8 @@ namespace eShopOnContainers.ViewModels.Base
|
||||
{
|
||||
var requestProvider = Resolve<IRequestProvider>();
|
||||
_unityContainer.RegisterInstance<ICatalogService>(new CatalogService(requestProvider));
|
||||
_unityContainer.RegisterInstance<IBasketService>(new BasketService(requestProvider));
|
||||
_unityContainer.RegisterInstance<IUserService>(new UserMockService());
|
||||
|
||||
UseMockService = true;
|
||||
}
|
||||
|
@ -0,0 +1,150 @@
|
||||
using eShopOnContainers.Core.Models.Basket;
|
||||
using eShopOnContainers.Core.Models.Catalog;
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using eShopOnContainers.Core.Models.User;
|
||||
using eShopOnContainers.Core.Services.Basket;
|
||||
using eShopOnContainers.Core.Services.User;
|
||||
using eShopOnContainers.Core.ViewModels.Base;
|
||||
using eShopOnContainers.ViewModels.Base;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
public class BasketViewModel : ViewModelBase
|
||||
{
|
||||
private User _user;
|
||||
private int _badgeCount;
|
||||
private ObservableCollection<BasketItem> _basketItems;
|
||||
private decimal _total;
|
||||
|
||||
private IUserService _userService;
|
||||
private IBasketService _basketService;
|
||||
|
||||
public BasketViewModel(IUserService userService,
|
||||
IBasketService basketService)
|
||||
{
|
||||
_userService = userService;
|
||||
_basketService = basketService;
|
||||
}
|
||||
|
||||
public int BadgeCount
|
||||
{
|
||||
get { return _badgeCount; }
|
||||
set
|
||||
{
|
||||
_badgeCount = value;
|
||||
RaisePropertyChanged(() => BadgeCount);
|
||||
}
|
||||
}
|
||||
|
||||
public ObservableCollection<BasketItem> BasketItems
|
||||
{
|
||||
get { return _basketItems; }
|
||||
set
|
||||
{
|
||||
_basketItems = value;
|
||||
RaisePropertyChanged(() => BasketItems);
|
||||
}
|
||||
}
|
||||
|
||||
public decimal Total
|
||||
{
|
||||
get { return _total; }
|
||||
set
|
||||
{
|
||||
_total = value;
|
||||
RaisePropertyChanged(() => Total);
|
||||
}
|
||||
}
|
||||
|
||||
public ICommand CheckoutCommand => new Command(Checkout);
|
||||
|
||||
public override async Task InitializeAsync(object navigationData)
|
||||
{
|
||||
MessagingCenter.Subscribe<CatalogViewModel, List<BasketItem>>(this, MessengerKeys.UpdateBasket, (sender, arg) =>
|
||||
{
|
||||
BadgeCount = arg.Count;
|
||||
|
||||
foreach (var basketItem in arg)
|
||||
{
|
||||
AddBasketItem(basketItem);
|
||||
}
|
||||
});
|
||||
|
||||
MessagingCenter.Subscribe<CatalogViewModel, CatalogItem>(this, MessengerKeys.AddProduct, (sender, arg) =>
|
||||
{
|
||||
BadgeCount++;
|
||||
|
||||
AddCatalogItem(arg);
|
||||
});
|
||||
|
||||
MessagingCenter.Subscribe<OrderItem>(this, MessengerKeys.UpdateProduct, (sender) =>
|
||||
{
|
||||
ReCalculateTotal();
|
||||
});
|
||||
|
||||
_user = await _userService.GetUserAsync();
|
||||
BasketItems = new ObservableCollection<BasketItem>();
|
||||
}
|
||||
|
||||
private void AddCatalogItem(CatalogItem item)
|
||||
{
|
||||
if (BasketItems.Any(o => o.ProductId.Equals(item.Id, StringComparison.CurrentCultureIgnoreCase)))
|
||||
{
|
||||
var orderItem = BasketItems.First(o => o.ProductId.Equals(item.Id, StringComparison.CurrentCultureIgnoreCase));
|
||||
orderItem.Quantity++;
|
||||
}
|
||||
else
|
||||
{
|
||||
BasketItems.Add(new BasketItem
|
||||
{
|
||||
ProductId = item.Id,
|
||||
ProductName = item.Name,
|
||||
PictureUrl = item.PictureUri,
|
||||
UnitPrice = item.Price,
|
||||
Quantity = 1
|
||||
});
|
||||
}
|
||||
|
||||
ReCalculateTotal();
|
||||
}
|
||||
|
||||
private void AddBasketItem(BasketItem item)
|
||||
{
|
||||
BasketItems.Add(item);
|
||||
|
||||
ReCalculateTotal();
|
||||
}
|
||||
|
||||
private void ReCalculateTotal()
|
||||
{
|
||||
Total = 0;
|
||||
|
||||
foreach (var orderItem in BasketItems)
|
||||
{
|
||||
Total += (orderItem.Quantity * orderItem.UnitPrice);
|
||||
}
|
||||
|
||||
|
||||
_basketService.UpdateBasketAsync(new CustomerBasket
|
||||
{
|
||||
BuyerId = _user.GuidUser,
|
||||
Items = BasketItems.ToList()
|
||||
});
|
||||
}
|
||||
|
||||
private void Checkout()
|
||||
{
|
||||
if (BasketItems.Any())
|
||||
{
|
||||
NavigationService.NavigateToAsync<CheckoutViewModel>(BasketItems);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,117 +0,0 @@
|
||||
using eShopOnContainers.Core.Helpers;
|
||||
using eShopOnContainers.Core.Models.Catalog;
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using eShopOnContainers.Core.Services.Orders;
|
||||
using eShopOnContainers.Core.ViewModels.Base;
|
||||
using eShopOnContainers.ViewModels.Base;
|
||||
using System;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
using Xamarin.Forms;
|
||||
|
||||
namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
public class CartViewModel : ViewModelBase
|
||||
{
|
||||
private int _badgeCount;
|
||||
private ObservableCollection<OrderItem> _orderItems;
|
||||
private decimal _total;
|
||||
|
||||
private IOrdersService _orderService;
|
||||
|
||||
public CartViewModel(IOrdersService orderService)
|
||||
{
|
||||
_orderService = orderService;
|
||||
}
|
||||
|
||||
public int BadgeCount
|
||||
{
|
||||
get { return _badgeCount; }
|
||||
set
|
||||
{
|
||||
_badgeCount = value;
|
||||
RaisePropertyChanged(() => BadgeCount);
|
||||
}
|
||||
}
|
||||
|
||||
public ObservableCollection<OrderItem> OrderItems
|
||||
{
|
||||
get { return _orderItems; }
|
||||
set
|
||||
{
|
||||
_orderItems = value;
|
||||
RaisePropertyChanged(() => OrderItems);
|
||||
}
|
||||
}
|
||||
|
||||
public decimal Total
|
||||
{
|
||||
get { return _total; }
|
||||
set
|
||||
{
|
||||
_total = value;
|
||||
RaisePropertyChanged(() => Total);
|
||||
}
|
||||
}
|
||||
|
||||
public ICommand CheckoutCommand => new Command(Checkout);
|
||||
|
||||
public override Task InitializeAsync(object navigationData)
|
||||
{
|
||||
MessagingCenter.Subscribe<CatalogViewModel, CatalogItem>(this, MessengerKeys.AddProduct, (sender, arg) =>
|
||||
{
|
||||
BadgeCount++;
|
||||
|
||||
AddCartItem(arg);
|
||||
});
|
||||
|
||||
MessagingCenter.Subscribe<OrderItem>(this, MessengerKeys.UpdateProduct, (sender) =>
|
||||
{
|
||||
ReCalculateTotal();
|
||||
});
|
||||
|
||||
OrderItems = new ObservableCollection<OrderItem>();
|
||||
|
||||
return base.InitializeAsync(navigationData);
|
||||
}
|
||||
|
||||
private void AddCartItem(CatalogItem item)
|
||||
{
|
||||
if (OrderItems.Any(o => o.ProductId == Convert.ToInt32(item.Id)))
|
||||
{
|
||||
var orderItem = OrderItems.First(o => o.ProductId == Convert.ToInt32(item.Id));
|
||||
orderItem.Quantity++;
|
||||
}
|
||||
else
|
||||
{
|
||||
OrderItems.Add(new OrderItem
|
||||
{
|
||||
ProductId = Convert.ToInt32(item.Id),
|
||||
ProductName = item.Name,
|
||||
ProductImage = item.PictureUri,
|
||||
UnitPrice = item.Price,
|
||||
Quantity = 1
|
||||
});
|
||||
}
|
||||
|
||||
ReCalculateTotal();
|
||||
}
|
||||
|
||||
private void ReCalculateTotal()
|
||||
{
|
||||
Total = 0;
|
||||
|
||||
foreach (var orderItem in OrderItems)
|
||||
{
|
||||
Total += orderItem.Total;
|
||||
}
|
||||
}
|
||||
|
||||
private void Checkout()
|
||||
{
|
||||
NavigationService.NavigateToAsync<CheckoutViewModel>(OrderItems);
|
||||
}
|
||||
}
|
||||
}
|
@ -6,6 +6,9 @@ using eShopOnContainers.Core.ViewModels.Base;
|
||||
using eShopOnContainers.Core.Models.Catalog;
|
||||
using eShopOnContainers.Core.Services.Catalog;
|
||||
using System.Windows.Input;
|
||||
using eShopOnContainers.Core.Services.User;
|
||||
using System.Linq;
|
||||
using eShopOnContainers.Core.Services.Basket;
|
||||
|
||||
namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
@ -17,10 +20,16 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
private ObservableCollection<CatalogType> _types;
|
||||
private CatalogType _type;
|
||||
|
||||
private IUserService _userService;
|
||||
private IBasketService _basketService;
|
||||
private ICatalogService _productsService;
|
||||
|
||||
public CatalogViewModel(ICatalogService productsService)
|
||||
public CatalogViewModel(IUserService userService,
|
||||
IBasketService basketService,
|
||||
ICatalogService productsService)
|
||||
{
|
||||
_userService = userService;
|
||||
_basketService = basketService;
|
||||
_productsService = productsService;
|
||||
}
|
||||
|
||||
@ -92,6 +101,15 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
Brands = await _productsService.GetCatalogBrandAsync();
|
||||
Types = await _productsService.GetCatalogTypeAsync();
|
||||
|
||||
var user = await _userService.GetUserAsync();
|
||||
var basket = await _basketService.GetBasketAsync(user.GuidUser);
|
||||
|
||||
if (basket != null && basket.Items.Any())
|
||||
{
|
||||
System.Diagnostics.Debug.WriteLine(basket.Items.Count);
|
||||
MessagingCenter.Send(this, MessengerKeys.UpdateBasket, basket.Items);
|
||||
}
|
||||
|
||||
IsBusy = false;
|
||||
}
|
||||
|
||||
@ -102,7 +120,7 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
|
||||
private async void Filter()
|
||||
{
|
||||
if(Brand == null && Type == null)
|
||||
if (Brand == null && Type == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@ -9,12 +9,14 @@ using eShopOnContainers.Core.Models.Orders;
|
||||
using System;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using eShopOnContainers.Core.Models.Basket;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
public class CheckoutViewModel : ViewModelBase
|
||||
{
|
||||
private ObservableCollection<OrderItem> _orderItems;
|
||||
private ObservableCollection<BasketItem> _orderItems;
|
||||
private Order _order;
|
||||
private User _user;
|
||||
|
||||
@ -25,7 +27,7 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
_userService = userService;
|
||||
}
|
||||
|
||||
public ObservableCollection<OrderItem> OrderItems
|
||||
public ObservableCollection<BasketItem> OrderItems
|
||||
{
|
||||
get { return _orderItems; }
|
||||
set
|
||||
@ -59,11 +61,11 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
|
||||
public override async Task InitializeAsync(object navigationData)
|
||||
{
|
||||
if (navigationData is ObservableCollection<OrderItem>)
|
||||
if (navigationData is ObservableCollection<BasketItem>)
|
||||
{
|
||||
IsBusy = true;
|
||||
|
||||
var orderItems = ((ObservableCollection<OrderItem>)navigationData);
|
||||
var orderItems = ((ObservableCollection<BasketItem>)navigationData);
|
||||
|
||||
OrderItems = orderItems;
|
||||
|
||||
@ -72,7 +74,7 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
Order = new Order
|
||||
{
|
||||
ShippingAddress = User,
|
||||
OrderItems = orderItems.ToList(),
|
||||
OrderItems = CreateOrderItems(orderItems.ToList()),
|
||||
Status = OrderStatus.Pending,
|
||||
OrderDate = DateTime.Now,
|
||||
Total = GetOrderTotal()
|
||||
@ -91,6 +93,25 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
await NavigationService.RemoveLastFromBackStackAsync();
|
||||
}
|
||||
|
||||
private List<OrderItem> CreateOrderItems(List<BasketItem> basketItems)
|
||||
{
|
||||
var orderItems = new List<OrderItem>();
|
||||
|
||||
foreach (var basketItem in basketItems)
|
||||
{
|
||||
orderItems.Add(new OrderItem
|
||||
{
|
||||
ProductId = basketItem.ProductId,
|
||||
ProductName = basketItem.ProductName,
|
||||
ProductImage = basketItem.PictureUrl,
|
||||
Quantity = basketItem.Quantity,
|
||||
UnitPrice = basketItem.UnitPrice
|
||||
});
|
||||
}
|
||||
|
||||
return orderItems;
|
||||
}
|
||||
|
||||
private decimal GetOrderTotal()
|
||||
{
|
||||
decimal total = 0;
|
||||
|
@ -8,7 +8,7 @@ using System.Windows.Input;
|
||||
namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
public class MainViewModel : ViewModelBase
|
||||
{
|
||||
{
|
||||
public ICommand SettingsCommand => new Command(Settings);
|
||||
|
||||
public override Task InitializeAsync(object navigationData)
|
||||
|
@ -1,10 +1,10 @@
|
||||
using System.Threading.Tasks;
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using eShopOnContainers.ViewModels.Base;
|
||||
using eShopOnContainers.Core.Services.Orders;
|
||||
using eShopOnContainers.Core.Services.Catalog;
|
||||
using eShopOnContainers.Core.Services.User;
|
||||
using eShopOnContainers.Core.Models.User;
|
||||
using eShopOnContainers.Core.Services.Basket;
|
||||
|
||||
namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
@ -13,11 +13,11 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
private Order _order;
|
||||
private User _user;
|
||||
|
||||
private IOrdersService _orderService;
|
||||
private IBasketService _orderService;
|
||||
private ICatalogService _catalogService;
|
||||
private IUserService _userService;
|
||||
|
||||
public OrderDetailViewModel(IOrdersService orderService,
|
||||
public OrderDetailViewModel(IBasketService orderService,
|
||||
ICatalogService catalogService,
|
||||
IUserService userService)
|
||||
{
|
||||
|
@ -1,5 +1,6 @@
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using eShopOnContainers.Core.Services.Orders;
|
||||
using eShopOnContainers.Core.Extensions;
|
||||
using eShopOnContainers.Core.Models.Orders;
|
||||
using eShopOnContainers.Core.Services.User;
|
||||
using eShopOnContainers.ViewModels.Base;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Threading.Tasks;
|
||||
@ -12,11 +13,11 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
private ObservableCollection<Order> _orders;
|
||||
|
||||
private IOrdersService _ordersService;
|
||||
private IUserService _userService;
|
||||
|
||||
public ProfileViewModel(IOrdersService ordersService)
|
||||
public ProfileViewModel(IUserService userService)
|
||||
{
|
||||
_ordersService = ordersService;
|
||||
_userService = userService;
|
||||
}
|
||||
|
||||
public ObservableCollection<Order> Orders
|
||||
@ -37,7 +38,8 @@ namespace eShopOnContainers.Core.ViewModels
|
||||
{
|
||||
IsBusy = true;
|
||||
|
||||
Orders = await _ordersService.GetOrdersAsync();
|
||||
var orders = await _userService.GetOrdersAsync();
|
||||
Orders = orders.ToObservableCollection();
|
||||
|
||||
IsBusy = false;
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
x:Class="eShopOnContainers.Core.Views.CartView"
|
||||
x:Class="eShopOnContainers.Core.Views.BasketView"
|
||||
xmlns:templates="clr-namespace:eShopOnContainers.Core.Views.Templates;assembly=eShopOnContainers.Core"
|
||||
Title="Cart">
|
||||
<ContentPage.Resources>
|
||||
@ -49,13 +49,13 @@
|
||||
BackgroundColor="{StaticResource BackgroundColor}">
|
||||
<!-- SHOPPING CART -->
|
||||
<Grid
|
||||
IsVisible="{Binding OrderItems.Count, Converter={StaticResource CountToBoolConverter}}">
|
||||
IsVisible="{Binding BasketItems.Count, Converter={StaticResource CountToBoolConverter}}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="60" />
|
||||
</Grid.RowDefinitions>
|
||||
<!-- CART ITEMS -->
|
||||
<ScrollView
|
||||
<Grid
|
||||
Grid.Row="0">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
@ -73,7 +73,8 @@
|
||||
<!-- ITEMS -->
|
||||
<ListView
|
||||
Grid.Row="1"
|
||||
ItemsSource="{Binding OrderItems}"
|
||||
ItemsSource="{Binding BasketItems}"
|
||||
HeightRequest="{Binding BasketItems.Count, Converter={StaticResource ItemsToHeightConverter}}"
|
||||
HasUnevenRows="True"
|
||||
SeparatorVisibility="None"
|
||||
VerticalOptions="FillAndExpand"
|
||||
@ -81,7 +82,7 @@
|
||||
<ListView.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<ViewCell>
|
||||
<templates:CartOrderItemTemplate />
|
||||
<templates:BasketItemTemplate />
|
||||
</ViewCell>
|
||||
</DataTemplate>
|
||||
</ListView.ItemTemplate>
|
||||
@ -102,7 +103,7 @@
|
||||
Style="{StaticResource CartTotalStyle}"/>
|
||||
</StackLayout>
|
||||
</Grid>
|
||||
</ScrollView>
|
||||
</Grid>
|
||||
<!-- CHECKOUT -->
|
||||
<Grid
|
||||
Grid.Row="1"
|
||||
@ -122,7 +123,7 @@
|
||||
</Grid>
|
||||
<!-- EMPTY SHOPPING CART -->
|
||||
<Grid
|
||||
IsVisible="{Binding OrderItems.Count, Converter={StaticResource InverseCountToBoolConverter}}">
|
||||
IsVisible="{Binding BasketItems.Count, Converter={StaticResource InverseCountToBoolConverter}}">
|
||||
<Label
|
||||
Text="EMPTY SHOPPING CART"
|
||||
HorizontalOptions="Center"
|
@ -2,9 +2,9 @@
|
||||
|
||||
namespace eShopOnContainers.Core.Views
|
||||
{
|
||||
public partial class CartView : ContentPage
|
||||
public partial class BasketView : ContentPage
|
||||
{
|
||||
public CartView()
|
||||
public BasketView()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
@ -69,6 +69,7 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<!-- BRAND -->
|
||||
<controls:BindablePicker
|
||||
Grid.Row="0"
|
||||
Title="BRAND"
|
||||
@ -83,6 +84,7 @@
|
||||
WinPhone="36"/>
|
||||
</controls:BindablePicker.HeightRequest>
|
||||
</controls:BindablePicker>
|
||||
<!-- TYPE -->
|
||||
<controls:BindablePicker
|
||||
Grid.Row="1"
|
||||
Title="TYPE"
|
||||
|
@ -21,6 +21,7 @@
|
||||
</ToolbarItem.Icon>
|
||||
</ToolbarItem>
|
||||
</ContentPage.ToolbarItems>
|
||||
<!-- CATALOG -->
|
||||
<views:CatalogView
|
||||
x:Name="HomeView">
|
||||
<views:CatalogView.Icon>
|
||||
@ -31,6 +32,7 @@
|
||||
WinPhone="Assets\menu_filter.png"/>
|
||||
</views:CatalogView.Icon>
|
||||
</views:CatalogView>
|
||||
<!-- PROFILE -->
|
||||
<views:ProfileView
|
||||
x:Name="ProfileView">
|
||||
<views:ProfileView.Icon>
|
||||
@ -41,16 +43,17 @@
|
||||
WinPhone="Assets\menu_profile.png"/>
|
||||
</views:ProfileView.Icon>
|
||||
</views:ProfileView>
|
||||
<views:CartView
|
||||
x:Name="CartView"
|
||||
<!-- BASKET -->
|
||||
<views:BasketView
|
||||
x:Name="BasketView"
|
||||
controls:CustomTabbedPage.BadgeText="{Binding BadgeCount}"
|
||||
controls:CustomTabbedPage.BadgeColor="{StaticResource LightGreenColor}">
|
||||
<views:CartView.Icon>
|
||||
<views:BasketView.Icon>
|
||||
<OnPlatform
|
||||
x:TypeArguments="FileImageSource"
|
||||
Android="menu_cart"
|
||||
iOS="menu_cart"
|
||||
WinPhone="Assets\menu_cart.png"/>
|
||||
</views:CartView.Icon>
|
||||
</views:CartView>
|
||||
</views:BasketView.Icon>
|
||||
</views:BasketView>
|
||||
</TabbedPage>
|
@ -27,11 +27,16 @@ namespace eShopOnContainers.Core.Views
|
||||
CurrentPage = ProfileView;
|
||||
break;
|
||||
case 2:
|
||||
CurrentPage = CartView;
|
||||
CurrentPage = BasketView;
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
var basketViewModel = ViewModelLocator.Instance.Resolve<BasketViewModel>();
|
||||
await basketViewModel.InitializeAsync(null);
|
||||
BasketView.BindingContext = basketViewModel;
|
||||
|
||||
var homeViewModel = ViewModelLocator.Instance.Resolve<CatalogViewModel>();
|
||||
await homeViewModel.InitializeAsync(null);
|
||||
HomeView.BindingContext = homeViewModel;
|
||||
@ -39,10 +44,6 @@ namespace eShopOnContainers.Core.Views
|
||||
var profileViewModel = ViewModelLocator.Instance.Resolve<ProfileViewModel>();
|
||||
await profileViewModel.InitializeAsync(null);
|
||||
ProfileView.BindingContext = profileViewModel;
|
||||
|
||||
var cartViewModel = ViewModelLocator.Instance.Resolve<CartViewModel>();
|
||||
await cartViewModel.InitializeAsync(null);
|
||||
CartView.BindingContext = cartViewModel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -89,7 +89,7 @@
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
BackgroundColor="Gray"/>
|
||||
<StackLayout
|
||||
<StackLayout
|
||||
Grid.Column="0"
|
||||
Grid.Row="1">
|
||||
<Label
|
||||
@ -100,7 +100,8 @@
|
||||
Text="{Binding Description}"
|
||||
Style="{StaticResource SettingsDescriptionStyle}"/>
|
||||
</StackLayout>
|
||||
<controls:ToggleButton
|
||||
<!-- ON / OFF -->
|
||||
<controls:ToggleButton
|
||||
Grid.Column="1"
|
||||
Grid.Row="1"
|
||||
Animate="True"
|
||||
@ -109,14 +110,14 @@
|
||||
Style="{StaticResource SettingsToggleButtonStyle}">
|
||||
<controls:ToggleButton.CheckedImage>
|
||||
<OnPlatform x:TypeArguments="ImageSource"
|
||||
Android="switchOn"
|
||||
iOS="switchOn"
|
||||
Android="switch_on.png"
|
||||
iOS="switchOn.png"
|
||||
WinPhone="Assets/switchOn.png"/>
|
||||
</controls:ToggleButton.CheckedImage>
|
||||
<controls:ToggleButton.UnCheckedImage>
|
||||
<OnPlatform x:TypeArguments="ImageSource"
|
||||
Android="switchOff"
|
||||
iOS="switchOff"
|
||||
Android="switch_off.png"
|
||||
iOS="switchOff.png"
|
||||
WinPhone="Assets/switchOff.png"/>
|
||||
</controls:ToggleButton.UnCheckedImage>
|
||||
</controls:ToggleButton>
|
||||
|
@ -2,7 +2,7 @@
|
||||
<ContentView
|
||||
xmlns="http://xamarin.com/schemas/2014/forms"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
x:Class="eShopOnContainers.Core.Views.Templates.CartOrderItemTemplate"
|
||||
x:Class="eShopOnContainers.Core.Views.Templates.BasketItemTemplate"
|
||||
xmlns:controls="clr-namespace:eShopOnContainers.Core.Controls;assembly=eShopOnContainers.Core"
|
||||
xmlns:ffimageloading="clr-namespace:FFImageLoading.Forms;assembly=FFImageLoading.Forms">
|
||||
<ContentView.Resources>
|
||||
@ -56,8 +56,6 @@
|
||||
|
||||
<Style x:Key="QuantityPickerStyle"
|
||||
TargetType="{x:Type controls:BindablePicker}">
|
||||
<Setter Property="WidthRequest"
|
||||
Value="36" />
|
||||
<Setter Property="BackgroundColor"
|
||||
Value="Transparent" />
|
||||
<Setter Property="HorizontalOptions"
|
||||
@ -71,6 +69,13 @@
|
||||
<ContentView.Content>
|
||||
<Grid
|
||||
BackgroundColor="{StaticResource BackgroundColor}">
|
||||
<Grid.Padding>
|
||||
<OnPlatform
|
||||
x:TypeArguments="Thickness"
|
||||
Android="0"
|
||||
iOS="0"
|
||||
WinPhone="12, 0"/>
|
||||
</Grid.Padding>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
@ -79,10 +84,11 @@
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="1" />
|
||||
</Grid.RowDefinitions>
|
||||
<!-- IMAGE -->
|
||||
<ffimageloading:CachedImage
|
||||
Grid.Column="0"
|
||||
Grid.Row="0"
|
||||
Source="{Binding ProductImage, Converter={StaticResource ImageConverter}}"
|
||||
Source="{Binding PictureUrl, Converter={StaticResource ImageConverter}}"
|
||||
CacheDuration="30"
|
||||
CacheType="Disk"
|
||||
DownsampleToViewSize="True"
|
||||
@ -91,6 +97,13 @@
|
||||
Aspect="AspectFit"
|
||||
VerticalOptions="Start"
|
||||
Margin="12,0,0,0">
|
||||
<ffimageloading:CachedImage.LoadingPlaceholder>
|
||||
<OnPlatform
|
||||
x:TypeArguments="ImageSource"
|
||||
iOS="default_product"
|
||||
Android="default_product"
|
||||
WinPhone="Assets/default_product.png"/>
|
||||
</ffimageloading:CachedImage.LoadingPlaceholder>
|
||||
<ffimageloading:CachedImage.ErrorPlaceholder>
|
||||
<OnPlatform
|
||||
x:TypeArguments="ImageSource"
|
||||
@ -108,6 +121,7 @@
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<!-- NAME -->
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Text="{Binding ProductName, Converter={StaticResource ToUpperConverter}}"/>
|
||||
@ -117,6 +131,7 @@
|
||||
<ColumnDefinition />
|
||||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
<!-- PRICE -->
|
||||
<Label
|
||||
Grid.Column="0"
|
||||
Text="{Binding UnitPrice, StringFormat='${0:N}'}"
|
||||
@ -125,8 +140,17 @@
|
||||
Grid.Column="1"
|
||||
ItemsSource="{Binding Numbers}"
|
||||
SelectedItem="{Binding Quantity, Mode=TwoWay}"
|
||||
Style="{StaticResource QuantityPickerStyle}"/>
|
||||
Style="{StaticResource QuantityPickerStyle}">
|
||||
<controls:BindablePicker.WidthRequest>
|
||||
<OnPlatform
|
||||
x:TypeArguments="x:Double"
|
||||
Android="36"
|
||||
iOS="36"
|
||||
WinPhone="72"/>
|
||||
</controls:BindablePicker.WidthRequest>
|
||||
</controls:BindablePicker>
|
||||
</Grid>
|
||||
<!-- TOTAL -->
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Text="{Binding Total, StringFormat='${0:N}'}"
|
@ -2,9 +2,9 @@
|
||||
|
||||
namespace eShopOnContainers.Core.Views.Templates
|
||||
{
|
||||
public partial class CartOrderItemTemplate : ContentView
|
||||
public partial class BasketItemTemplate : ContentView
|
||||
{
|
||||
public CartOrderItemTemplate()
|
||||
public BasketItemTemplate()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
@ -40,7 +40,7 @@
|
||||
<Setter Property="HorizontalOptions"
|
||||
Value="End" />
|
||||
</Style>
|
||||
|
||||
|
||||
<Style x:Key="OrderTotalStyle"
|
||||
TargetType="{x:Type Label}">
|
||||
<Setter Property="FontFamily"
|
||||
@ -67,6 +67,7 @@
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="1" />
|
||||
</Grid.RowDefinitions>
|
||||
<!-- IMAGE -->
|
||||
<ffimageloading:CachedImage
|
||||
Grid.Column="0"
|
||||
Grid.Row="0"
|
||||
@ -79,6 +80,13 @@
|
||||
Aspect="AspectFit"
|
||||
VerticalOptions="Start"
|
||||
Margin="12,0,0,0">
|
||||
<ffimageloading:CachedImage.LoadingPlaceholder>
|
||||
<OnPlatform
|
||||
x:TypeArguments="ImageSource"
|
||||
iOS="default_product"
|
||||
Android="default_product"
|
||||
WinPhone="Assets/default_product.png"/>
|
||||
</ffimageloading:CachedImage.LoadingPlaceholder>
|
||||
<ffimageloading:CachedImage.ErrorPlaceholder>
|
||||
<OnPlatform
|
||||
x:TypeArguments="ImageSource"
|
||||
@ -96,6 +104,7 @@
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<!-- NAME -->
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Text="{Binding ProductName, Converter={StaticResource ToUpperConverter}}"/>
|
||||
@ -105,6 +114,7 @@
|
||||
<ColumnDefinition />
|
||||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
<!-- PRICE -->
|
||||
<Label
|
||||
Grid.Column="0"
|
||||
Text="{Binding UnitPrice, StringFormat='${0:N}'}"
|
||||
@ -114,6 +124,7 @@
|
||||
Text="{Binding Quantity}"
|
||||
Style="{StaticResource OrderItemQuantityStyle}"/>
|
||||
</Grid>
|
||||
<!-- TOTAL -->
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Text="{Binding Total, StringFormat='${0:N}'}"
|
||||
|
@ -70,6 +70,7 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<!-- IMAGE -->
|
||||
<ffimageloading:CachedImage
|
||||
Grid.Row="0"
|
||||
Source="{Binding PictureUri}"
|
||||
@ -77,6 +78,13 @@
|
||||
CacheType="Disk"
|
||||
DownsampleToViewSize="True"
|
||||
Aspect="AspectFill">
|
||||
<ffimageloading:CachedImage.LoadingPlaceholder>
|
||||
<OnPlatform
|
||||
x:TypeArguments="ImageSource"
|
||||
iOS="default_product"
|
||||
Android="default_product"
|
||||
WinPhone="Assets/default_product.png"/>
|
||||
</ffimageloading:CachedImage.LoadingPlaceholder>
|
||||
<ffimageloading:CachedImage.ErrorPlaceholder>
|
||||
<OnPlatform
|
||||
x:TypeArguments="ImageSource"
|
||||
@ -89,12 +97,14 @@
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Style="{StaticResource AddButtonStyle}">
|
||||
<controls:CartButton />
|
||||
<controls:AddBasketButton />
|
||||
</Grid>
|
||||
<!-- NAME -->
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Text="{Binding Name, Converter={StaticResource ToUpperConverter}}"
|
||||
Style="{StaticResource ProductNameStyle}"/>
|
||||
<!-- PRICE -->
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Text="{Binding Price, StringFormat='${0:N}'}"
|
||||
|
@ -45,8 +45,8 @@
|
||||
<Compile Include="Behaviors\Base\BindableBehavior.cs" />
|
||||
<Compile Include="Behaviors\EventToCommandBehavior.cs" />
|
||||
<Compile Include="Controls\BindablePicker.cs" />
|
||||
<Compile Include="Controls\CartButton.xaml.cs">
|
||||
<DependentUpon>CartButton.xaml</DependentUpon>
|
||||
<Compile Include="Controls\AddBasketButton.xaml.cs">
|
||||
<DependentUpon>AddBasketButton.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Controls\CustomTabbedPage.cs" />
|
||||
<Compile Include="Controls\ToggleButton.cs" />
|
||||
@ -55,6 +55,7 @@
|
||||
<Compile Include="Converters\ImageConverter.cs" />
|
||||
<Compile Include="Converters\InverseBoolConverter.cs" />
|
||||
<Compile Include="Converters\InverseCountToBoolConverter.cs" />
|
||||
<Compile Include="Converters\ItemsToHeightConverter.cs" />
|
||||
<Compile Include="Converters\ItemTappedConverter.cs" />
|
||||
<Compile Include="Converters\ToUpperConverter.cs" />
|
||||
<Compile Include="Effects\LineColorEffect.cs" />
|
||||
@ -64,10 +65,12 @@
|
||||
<Compile Include="GlobalSettings.cs" />
|
||||
<Compile Include="Helpers\EasingHelper.cs" />
|
||||
<Compile Include="Helpers\NumericHelper.cs" />
|
||||
<Compile Include="Models\Basket\BasketItem.cs" />
|
||||
<Compile Include="Models\Catalog\CatalogBrand.cs" />
|
||||
<Compile Include="Models\Catalog\CatalogRoot.cs" />
|
||||
<Compile Include="Models\Catalog\CatalogType.cs" />
|
||||
<Compile Include="Models\Navigation\TabParameter.cs" />
|
||||
<Compile Include="Models\Basket\CustomerBasket.cs" />
|
||||
<Compile Include="Models\Orders\Order.cs" />
|
||||
<Compile Include="Models\Orders\OrderItem.cs" />
|
||||
<Compile Include="Models\Orders\OrderStatus.cs" />
|
||||
@ -81,10 +84,11 @@
|
||||
<Compile Include="Services\Navigation\NavigationService.cs" />
|
||||
<Compile Include="Services\OpenUrl\IOpenUrlService.cs" />
|
||||
<Compile Include="Services\OpenUrl\OpenUrlService.cs" />
|
||||
<Compile Include="Services\Orders\OrdersMockService.cs" />
|
||||
<Compile Include="Services\Orders\IOrdersService.cs" />
|
||||
<Compile Include="Services\Basket\BasketMockService.cs" />
|
||||
<Compile Include="Services\Basket\IBasketService.cs" />
|
||||
<Compile Include="Services\Catalog\CatalogMockService.cs" />
|
||||
<Compile Include="Services\Catalog\ICatalogService.cs" />
|
||||
<Compile Include="Services\Basket\BasketService.cs" />
|
||||
<Compile Include="Services\RequestProvider\IRequestProvider.cs" />
|
||||
<Compile Include="Services\RequestProvider\RequestProvider.cs" />
|
||||
<Compile Include="Services\User\IUserService.cs" />
|
||||
@ -98,7 +102,7 @@
|
||||
<Compile Include="ViewModels\Base\MessengerKeys.cs" />
|
||||
<Compile Include="ViewModels\Base\ViewModelBase.cs" />
|
||||
<Compile Include="ViewModels\Base\ViewModelLocator.cs" />
|
||||
<Compile Include="ViewModels\CartViewModel.cs" />
|
||||
<Compile Include="ViewModels\BasketViewModel.cs" />
|
||||
<Compile Include="ViewModels\CatalogViewModel.cs" />
|
||||
<Compile Include="ViewModels\CheckoutViewModel.cs" />
|
||||
<Compile Include="ViewModels\LoginViewModel.cs" />
|
||||
@ -106,8 +110,8 @@
|
||||
<Compile Include="ViewModels\OrderDetailViewModel.cs" />
|
||||
<Compile Include="ViewModels\ProfileViewModel.cs" />
|
||||
<Compile Include="ViewModels\SettingsViewModel.cs" />
|
||||
<Compile Include="Views\CartView.xaml.cs">
|
||||
<DependentUpon>CartView.xaml</DependentUpon>
|
||||
<Compile Include="Views\BasketView.xaml.cs">
|
||||
<DependentUpon>BasketView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Views\CheckoutView.xaml.cs">
|
||||
<DependentUpon>CheckoutView.xaml</DependentUpon>
|
||||
@ -136,8 +140,8 @@
|
||||
<Compile Include="Views\SettingsView.xaml.cs">
|
||||
<DependentUpon>SettingsView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Views\Templates\CartOrderItemTemplate.xaml.cs">
|
||||
<DependentUpon>CartOrderItemTemplate.xaml</DependentUpon>
|
||||
<Compile Include="Views\Templates\BasketItemTemplate.xaml.cs">
|
||||
<DependentUpon>BasketItemTemplate.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Views\Templates\OrderItemTemplate.xaml.cs">
|
||||
<DependentUpon>OrderItemTemplate.xaml</DependentUpon>
|
||||
@ -254,7 +258,7 @@
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Views\CartView.xaml">
|
||||
<EmbeddedResource Include="Views\BasketView.xaml">
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
@ -314,13 +318,13 @@
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Views\Templates\CartOrderItemTemplate.xaml">
|
||||
<EmbeddedResource Include="Views\Templates\BasketItemTemplate.xaml">
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Controls\CartButton.xaml">
|
||||
<EmbeddedResource Include="Controls\AddBasketButton.xaml">
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
@ -338,9 +342,7 @@
|
||||
<ErrorText>Este proyecto hace referencia a los paquetes NuGet que faltan en este equipo. Use la restauración de paquetes NuGet para descargarlos. Para obtener más información, consulte http://go.microsoft.com/fwlink/?LinkID=322105. El archivo que falta es {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets'))" />
|
||||
<Error Condition="!Exists('..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets" Condition="Exists('..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets')" />
|
||||
<Import Project="..\..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets" Condition="Exists('..\..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" />
|
||||
<Target Name="EnsureBclBuildImported" BeforeTargets="BeforeBuild" Condition="'$(BclBuildImported)' == ''">
|
||||
<Error Condition="!Exists('..\..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=317567." HelpKeyword="BCLBUILD2001" />
|
||||
|
@ -9,7 +9,6 @@
|
||||
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="portable45-net45+win8+wp8+wpa81" />
|
||||
<package id="SlideOverKit" version="2.1.4" targetFramework="portable45-net45+win8+wp8+wpa81" />
|
||||
<package id="Splat" version="1.6.2" targetFramework="portable45-net45+win8+wp8+wpa81" />
|
||||
<package id="StyleCop.MSBuild" version="5.0.0-alpha01" targetFramework="portable45-net45+win8+wp8+wpa81" developmentDependency="true" />
|
||||
<package id="Unity" version="4.0.1" targetFramework="portable45-net45+win8+wp8+wpa81" />
|
||||
<package id="Xamarin.FFImageLoading" version="2.2.6-pre-232" targetFramework="portable45-net45+win8+wp8+wpa81" />
|
||||
<package id="Xamarin.FFImageLoading.Forms" version="2.2.6-pre-232" targetFramework="portable45-net45+win8+wp8+wpa81" />
|
||||
|
@ -2027,316 +2027,319 @@ namespace eShopOnContainers.Droid
|
||||
public const int background = 2130837580;
|
||||
|
||||
// aapt resource value: 0x7f02004d
|
||||
public const int design_fab_background = 2130837581;
|
||||
public const int default_product = 2130837581;
|
||||
|
||||
// aapt resource value: 0x7f02004e
|
||||
public const int design_snackbar_background = 2130837582;
|
||||
public const int design_fab_background = 2130837582;
|
||||
|
||||
// aapt resource value: 0x7f02004f
|
||||
public const int fake_product_01 = 2130837583;
|
||||
public const int design_snackbar_background = 2130837583;
|
||||
|
||||
// aapt resource value: 0x7f020050
|
||||
public const int fake_product_02 = 2130837584;
|
||||
public const int fake_product_01 = 2130837584;
|
||||
|
||||
// aapt resource value: 0x7f020051
|
||||
public const int fake_product_03 = 2130837585;
|
||||
public const int fake_product_02 = 2130837585;
|
||||
|
||||
// aapt resource value: 0x7f020052
|
||||
public const int fake_product_04 = 2130837586;
|
||||
public const int fake_product_03 = 2130837586;
|
||||
|
||||
// aapt resource value: 0x7f020053
|
||||
public const int fake_product_05 = 2130837587;
|
||||
public const int fake_product_04 = 2130837587;
|
||||
|
||||
// aapt resource value: 0x7f020054
|
||||
public const int ic_audiotrack = 2130837588;
|
||||
public const int fake_product_05 = 2130837588;
|
||||
|
||||
// aapt resource value: 0x7f020055
|
||||
public const int ic_audiotrack_light = 2130837589;
|
||||
public const int ic_audiotrack = 2130837589;
|
||||
|
||||
// aapt resource value: 0x7f020056
|
||||
public const int ic_bluetooth_grey = 2130837590;
|
||||
public const int ic_audiotrack_light = 2130837590;
|
||||
|
||||
// aapt resource value: 0x7f020057
|
||||
public const int ic_bluetooth_white = 2130837591;
|
||||
public const int ic_bluetooth_grey = 2130837591;
|
||||
|
||||
// aapt resource value: 0x7f020058
|
||||
public const int ic_cast_dark = 2130837592;
|
||||
public const int ic_bluetooth_white = 2130837592;
|
||||
|
||||
// aapt resource value: 0x7f020059
|
||||
public const int ic_cast_disabled_light = 2130837593;
|
||||
public const int ic_cast_dark = 2130837593;
|
||||
|
||||
// aapt resource value: 0x7f02005a
|
||||
public const int ic_cast_grey = 2130837594;
|
||||
public const int ic_cast_disabled_light = 2130837594;
|
||||
|
||||
// aapt resource value: 0x7f02005b
|
||||
public const int ic_cast_light = 2130837595;
|
||||
public const int ic_cast_grey = 2130837595;
|
||||
|
||||
// aapt resource value: 0x7f02005c
|
||||
public const int ic_cast_off_light = 2130837596;
|
||||
public const int ic_cast_light = 2130837596;
|
||||
|
||||
// aapt resource value: 0x7f02005d
|
||||
public const int ic_cast_on_0_light = 2130837597;
|
||||
public const int ic_cast_off_light = 2130837597;
|
||||
|
||||
// aapt resource value: 0x7f02005e
|
||||
public const int ic_cast_on_1_light = 2130837598;
|
||||
public const int ic_cast_on_0_light = 2130837598;
|
||||
|
||||
// aapt resource value: 0x7f02005f
|
||||
public const int ic_cast_on_2_light = 2130837599;
|
||||
public const int ic_cast_on_1_light = 2130837599;
|
||||
|
||||
// aapt resource value: 0x7f020060
|
||||
public const int ic_cast_on_light = 2130837600;
|
||||
public const int ic_cast_on_2_light = 2130837600;
|
||||
|
||||
// aapt resource value: 0x7f020061
|
||||
public const int ic_cast_white = 2130837601;
|
||||
public const int ic_cast_on_light = 2130837601;
|
||||
|
||||
// aapt resource value: 0x7f020062
|
||||
public const int ic_close_dark = 2130837602;
|
||||
public const int ic_cast_white = 2130837602;
|
||||
|
||||
// aapt resource value: 0x7f020063
|
||||
public const int ic_close_light = 2130837603;
|
||||
public const int ic_close_dark = 2130837603;
|
||||
|
||||
// aapt resource value: 0x7f020064
|
||||
public const int ic_collapse = 2130837604;
|
||||
public const int ic_close_light = 2130837604;
|
||||
|
||||
// aapt resource value: 0x7f020065
|
||||
public const int ic_collapse_00000 = 2130837605;
|
||||
public const int ic_collapse = 2130837605;
|
||||
|
||||
// aapt resource value: 0x7f020066
|
||||
public const int ic_collapse_00001 = 2130837606;
|
||||
public const int ic_collapse_00000 = 2130837606;
|
||||
|
||||
// aapt resource value: 0x7f020067
|
||||
public const int ic_collapse_00002 = 2130837607;
|
||||
public const int ic_collapse_00001 = 2130837607;
|
||||
|
||||
// aapt resource value: 0x7f020068
|
||||
public const int ic_collapse_00003 = 2130837608;
|
||||
public const int ic_collapse_00002 = 2130837608;
|
||||
|
||||
// aapt resource value: 0x7f020069
|
||||
public const int ic_collapse_00004 = 2130837609;
|
||||
public const int ic_collapse_00003 = 2130837609;
|
||||
|
||||
// aapt resource value: 0x7f02006a
|
||||
public const int ic_collapse_00005 = 2130837610;
|
||||
public const int ic_collapse_00004 = 2130837610;
|
||||
|
||||
// aapt resource value: 0x7f02006b
|
||||
public const int ic_collapse_00006 = 2130837611;
|
||||
public const int ic_collapse_00005 = 2130837611;
|
||||
|
||||
// aapt resource value: 0x7f02006c
|
||||
public const int ic_collapse_00007 = 2130837612;
|
||||
public const int ic_collapse_00006 = 2130837612;
|
||||
|
||||
// aapt resource value: 0x7f02006d
|
||||
public const int ic_collapse_00008 = 2130837613;
|
||||
public const int ic_collapse_00007 = 2130837613;
|
||||
|
||||
// aapt resource value: 0x7f02006e
|
||||
public const int ic_collapse_00009 = 2130837614;
|
||||
public const int ic_collapse_00008 = 2130837614;
|
||||
|
||||
// aapt resource value: 0x7f02006f
|
||||
public const int ic_collapse_00010 = 2130837615;
|
||||
public const int ic_collapse_00009 = 2130837615;
|
||||
|
||||
// aapt resource value: 0x7f020070
|
||||
public const int ic_collapse_00011 = 2130837616;
|
||||
public const int ic_collapse_00010 = 2130837616;
|
||||
|
||||
// aapt resource value: 0x7f020071
|
||||
public const int ic_collapse_00012 = 2130837617;
|
||||
public const int ic_collapse_00011 = 2130837617;
|
||||
|
||||
// aapt resource value: 0x7f020072
|
||||
public const int ic_collapse_00013 = 2130837618;
|
||||
public const int ic_collapse_00012 = 2130837618;
|
||||
|
||||
// aapt resource value: 0x7f020073
|
||||
public const int ic_collapse_00014 = 2130837619;
|
||||
public const int ic_collapse_00013 = 2130837619;
|
||||
|
||||
// aapt resource value: 0x7f020074
|
||||
public const int ic_collapse_00015 = 2130837620;
|
||||
public const int ic_collapse_00014 = 2130837620;
|
||||
|
||||
// aapt resource value: 0x7f020075
|
||||
public const int ic_errorstatus = 2130837621;
|
||||
public const int ic_collapse_00015 = 2130837621;
|
||||
|
||||
// aapt resource value: 0x7f020076
|
||||
public const int ic_expand = 2130837622;
|
||||
public const int ic_errorstatus = 2130837622;
|
||||
|
||||
// aapt resource value: 0x7f020077
|
||||
public const int ic_expand_00000 = 2130837623;
|
||||
public const int ic_expand = 2130837623;
|
||||
|
||||
// aapt resource value: 0x7f020078
|
||||
public const int ic_expand_00001 = 2130837624;
|
||||
public const int ic_expand_00000 = 2130837624;
|
||||
|
||||
// aapt resource value: 0x7f020079
|
||||
public const int ic_expand_00002 = 2130837625;
|
||||
public const int ic_expand_00001 = 2130837625;
|
||||
|
||||
// aapt resource value: 0x7f02007a
|
||||
public const int ic_expand_00003 = 2130837626;
|
||||
public const int ic_expand_00002 = 2130837626;
|
||||
|
||||
// aapt resource value: 0x7f02007b
|
||||
public const int ic_expand_00004 = 2130837627;
|
||||
public const int ic_expand_00003 = 2130837627;
|
||||
|
||||
// aapt resource value: 0x7f02007c
|
||||
public const int ic_expand_00005 = 2130837628;
|
||||
public const int ic_expand_00004 = 2130837628;
|
||||
|
||||
// aapt resource value: 0x7f02007d
|
||||
public const int ic_expand_00006 = 2130837629;
|
||||
public const int ic_expand_00005 = 2130837629;
|
||||
|
||||
// aapt resource value: 0x7f02007e
|
||||
public const int ic_expand_00007 = 2130837630;
|
||||
public const int ic_expand_00006 = 2130837630;
|
||||
|
||||
// aapt resource value: 0x7f02007f
|
||||
public const int ic_expand_00008 = 2130837631;
|
||||
public const int ic_expand_00007 = 2130837631;
|
||||
|
||||
// aapt resource value: 0x7f020080
|
||||
public const int ic_expand_00009 = 2130837632;
|
||||
public const int ic_expand_00008 = 2130837632;
|
||||
|
||||
// aapt resource value: 0x7f020081
|
||||
public const int ic_expand_00010 = 2130837633;
|
||||
public const int ic_expand_00009 = 2130837633;
|
||||
|
||||
// aapt resource value: 0x7f020082
|
||||
public const int ic_expand_00011 = 2130837634;
|
||||
public const int ic_expand_00010 = 2130837634;
|
||||
|
||||
// aapt resource value: 0x7f020083
|
||||
public const int ic_expand_00012 = 2130837635;
|
||||
public const int ic_expand_00011 = 2130837635;
|
||||
|
||||
// aapt resource value: 0x7f020084
|
||||
public const int ic_expand_00013 = 2130837636;
|
||||
public const int ic_expand_00012 = 2130837636;
|
||||
|
||||
// aapt resource value: 0x7f020085
|
||||
public const int ic_expand_00014 = 2130837637;
|
||||
public const int ic_expand_00013 = 2130837637;
|
||||
|
||||
// aapt resource value: 0x7f020086
|
||||
public const int ic_expand_00015 = 2130837638;
|
||||
public const int ic_expand_00014 = 2130837638;
|
||||
|
||||
// aapt resource value: 0x7f020087
|
||||
public const int ic_media_pause = 2130837639;
|
||||
public const int ic_expand_00015 = 2130837639;
|
||||
|
||||
// aapt resource value: 0x7f020088
|
||||
public const int ic_media_play = 2130837640;
|
||||
public const int ic_media_pause = 2130837640;
|
||||
|
||||
// aapt resource value: 0x7f020089
|
||||
public const int ic_media_route_disabled_mono_dark = 2130837641;
|
||||
public const int ic_media_play = 2130837641;
|
||||
|
||||
// aapt resource value: 0x7f02008a
|
||||
public const int ic_media_route_off_mono_dark = 2130837642;
|
||||
public const int ic_media_route_disabled_mono_dark = 2130837642;
|
||||
|
||||
// aapt resource value: 0x7f02008b
|
||||
public const int ic_media_route_on_0_mono_dark = 2130837643;
|
||||
public const int ic_media_route_off_mono_dark = 2130837643;
|
||||
|
||||
// aapt resource value: 0x7f02008c
|
||||
public const int ic_media_route_on_1_mono_dark = 2130837644;
|
||||
public const int ic_media_route_on_0_mono_dark = 2130837644;
|
||||
|
||||
// aapt resource value: 0x7f02008d
|
||||
public const int ic_media_route_on_2_mono_dark = 2130837645;
|
||||
public const int ic_media_route_on_1_mono_dark = 2130837645;
|
||||
|
||||
// aapt resource value: 0x7f02008e
|
||||
public const int ic_media_route_on_mono_dark = 2130837646;
|
||||
public const int ic_media_route_on_2_mono_dark = 2130837646;
|
||||
|
||||
// aapt resource value: 0x7f02008f
|
||||
public const int ic_pause_dark = 2130837647;
|
||||
public const int ic_media_route_on_mono_dark = 2130837647;
|
||||
|
||||
// aapt resource value: 0x7f020090
|
||||
public const int ic_pause_light = 2130837648;
|
||||
public const int ic_pause_dark = 2130837648;
|
||||
|
||||
// aapt resource value: 0x7f020091
|
||||
public const int ic_play_dark = 2130837649;
|
||||
public const int ic_pause_light = 2130837649;
|
||||
|
||||
// aapt resource value: 0x7f020092
|
||||
public const int ic_play_light = 2130837650;
|
||||
public const int ic_play_dark = 2130837650;
|
||||
|
||||
// aapt resource value: 0x7f020093
|
||||
public const int ic_speaker_dark = 2130837651;
|
||||
public const int ic_play_light = 2130837651;
|
||||
|
||||
// aapt resource value: 0x7f020094
|
||||
public const int ic_speaker_group_dark = 2130837652;
|
||||
public const int ic_speaker_dark = 2130837652;
|
||||
|
||||
// aapt resource value: 0x7f020095
|
||||
public const int ic_speaker_group_light = 2130837653;
|
||||
public const int ic_speaker_group_dark = 2130837653;
|
||||
|
||||
// aapt resource value: 0x7f020096
|
||||
public const int ic_speaker_light = 2130837654;
|
||||
public const int ic_speaker_group_light = 2130837654;
|
||||
|
||||
// aapt resource value: 0x7f020097
|
||||
public const int ic_successstatus = 2130837655;
|
||||
public const int ic_speaker_light = 2130837655;
|
||||
|
||||
// aapt resource value: 0x7f020098
|
||||
public const int ic_tv_dark = 2130837656;
|
||||
public const int ic_successstatus = 2130837656;
|
||||
|
||||
// aapt resource value: 0x7f020099
|
||||
public const int ic_tv_light = 2130837657;
|
||||
public const int ic_tv_dark = 2130837657;
|
||||
|
||||
// aapt resource value: 0x7f02009a
|
||||
public const int icon = 2130837658;
|
||||
public const int ic_tv_light = 2130837658;
|
||||
|
||||
// aapt resource value: 0x7f02009b
|
||||
public const int menu_cart = 2130837659;
|
||||
public const int icon = 2130837659;
|
||||
|
||||
// aapt resource value: 0x7f02009c
|
||||
public const int menu_filter = 2130837660;
|
||||
public const int menu_cart = 2130837660;
|
||||
|
||||
// aapt resource value: 0x7f02009d
|
||||
public const int menu_profile = 2130837661;
|
||||
public const int menu_filter = 2130837661;
|
||||
|
||||
// aapt resource value: 0x7f02009e
|
||||
public const int mr_dialog_material_background_dark = 2130837662;
|
||||
public const int menu_profile = 2130837662;
|
||||
|
||||
// aapt resource value: 0x7f02009f
|
||||
public const int mr_dialog_material_background_light = 2130837663;
|
||||
public const int mr_dialog_material_background_dark = 2130837663;
|
||||
|
||||
// aapt resource value: 0x7f0200a0
|
||||
public const int mr_ic_audiotrack_light = 2130837664;
|
||||
public const int mr_dialog_material_background_light = 2130837664;
|
||||
|
||||
// aapt resource value: 0x7f0200a1
|
||||
public const int mr_ic_cast_dark = 2130837665;
|
||||
public const int mr_ic_audiotrack_light = 2130837665;
|
||||
|
||||
// aapt resource value: 0x7f0200a2
|
||||
public const int mr_ic_cast_light = 2130837666;
|
||||
public const int mr_ic_cast_dark = 2130837666;
|
||||
|
||||
// aapt resource value: 0x7f0200a3
|
||||
public const int mr_ic_close_dark = 2130837667;
|
||||
public const int mr_ic_cast_light = 2130837667;
|
||||
|
||||
// aapt resource value: 0x7f0200a4
|
||||
public const int mr_ic_close_light = 2130837668;
|
||||
public const int mr_ic_close_dark = 2130837668;
|
||||
|
||||
// aapt resource value: 0x7f0200a5
|
||||
public const int mr_ic_media_route_connecting_mono_dark = 2130837669;
|
||||
public const int mr_ic_close_light = 2130837669;
|
||||
|
||||
// aapt resource value: 0x7f0200a6
|
||||
public const int mr_ic_media_route_connecting_mono_light = 2130837670;
|
||||
public const int mr_ic_media_route_connecting_mono_dark = 2130837670;
|
||||
|
||||
// aapt resource value: 0x7f0200a7
|
||||
public const int mr_ic_media_route_mono_dark = 2130837671;
|
||||
public const int mr_ic_media_route_connecting_mono_light = 2130837671;
|
||||
|
||||
// aapt resource value: 0x7f0200a8
|
||||
public const int mr_ic_media_route_mono_light = 2130837672;
|
||||
public const int mr_ic_media_route_mono_dark = 2130837672;
|
||||
|
||||
// aapt resource value: 0x7f0200a9
|
||||
public const int mr_ic_pause_dark = 2130837673;
|
||||
public const int mr_ic_media_route_mono_light = 2130837673;
|
||||
|
||||
// aapt resource value: 0x7f0200aa
|
||||
public const int mr_ic_pause_light = 2130837674;
|
||||
public const int mr_ic_pause_dark = 2130837674;
|
||||
|
||||
// aapt resource value: 0x7f0200ab
|
||||
public const int mr_ic_play_dark = 2130837675;
|
||||
public const int mr_ic_pause_light = 2130837675;
|
||||
|
||||
// aapt resource value: 0x7f0200ac
|
||||
public const int mr_ic_play_light = 2130837676;
|
||||
public const int mr_ic_play_dark = 2130837676;
|
||||
|
||||
// aapt resource value: 0x7f0200ad
|
||||
public const int noimage = 2130837677;
|
||||
|
||||
// aapt resource value: 0x7f0200b4
|
||||
public const int notification_template_icon_bg = 2130837684;
|
||||
public const int mr_ic_play_light = 2130837677;
|
||||
|
||||
// aapt resource value: 0x7f0200ae
|
||||
public const int product_add = 2130837678;
|
||||
public const int noimage = 2130837678;
|
||||
|
||||
// aapt resource value: 0x7f0200b5
|
||||
public const int notification_template_icon_bg = 2130837685;
|
||||
|
||||
// aapt resource value: 0x7f0200af
|
||||
public const int roundedbg = 2130837679;
|
||||
public const int product_add = 2130837679;
|
||||
|
||||
// aapt resource value: 0x7f0200b0
|
||||
public const int roundedbgdark = 2130837680;
|
||||
public const int roundedbg = 2130837680;
|
||||
|
||||
// aapt resource value: 0x7f0200b1
|
||||
public const int splash_drawable = 2130837681;
|
||||
public const int roundedbgdark = 2130837681;
|
||||
|
||||
// aapt resource value: 0x7f0200b2
|
||||
public const int switch_off = 2130837682;
|
||||
public const int splash_drawable = 2130837682;
|
||||
|
||||
// aapt resource value: 0x7f0200b3
|
||||
public const int switch_on = 2130837683;
|
||||
public const int switch_off = 2130837683;
|
||||
|
||||
// aapt resource value: 0x7f0200b4
|
||||
public const int switch_on = 2130837684;
|
||||
|
||||
static Drawable()
|
||||
{
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 60 KiB |
@ -223,6 +223,8 @@
|
||||
<None Include="packages.config" />
|
||||
<None Include="Resources\AboutResources.txt" />
|
||||
<None Include="Assets\AboutAssets.txt" />
|
||||
<AndroidResource Include="Resources\drawable-xxhdpi\switch_off.png" />
|
||||
<AndroidResource Include="Resources\drawable-xxhdpi\switch_on.png" />
|
||||
<AndroidResource Include="Resources\layout\Tabs.axml">
|
||||
<SubType>Designer</SubType>
|
||||
</AndroidResource>
|
||||
@ -332,9 +334,6 @@
|
||||
<ItemGroup>
|
||||
<AndroidResource Include="Resources\drawable-xhdpi\switch_on.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<AndroidResource Include="Resources\drawable-xxhdpi\switch_on.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<AndroidResource Include="Resources\drawable-hdpi\switch_off.png" />
|
||||
</ItemGroup>
|
||||
@ -342,10 +341,10 @@
|
||||
<AndroidResource Include="Resources\drawable-xhdpi\switch_off.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<AndroidResource Include="Resources\drawable-xxhdpi\switch_off.png" />
|
||||
<AndroidResource Include="Resources\drawable\noimage.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<AndroidResource Include="Resources\drawable\noimage.png" />
|
||||
<AndroidResource Include="Resources\drawable\default_product.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
||||
<Import Project="..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android.Support.Vector.Drawable.targets" Condition="Exists('..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android.Support.Vector.Drawable.targets')" />
|
||||
@ -354,9 +353,7 @@
|
||||
<ErrorText>Este proyecto hace referencia a los paquetes NuGet que faltan en este equipo. Use la restauración de paquetes NuGet para descargarlos. Para obtener más información, consulte http://go.microsoft.com/fwlink/?LinkID=322105. El archivo que falta es {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android.Support.Vector.Drawable.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android.Support.Vector.Drawable.targets'))" />
|
||||
<Error Condition="!Exists('..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets'))" />
|
||||
<Error Condition="!Exists('..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets" Condition="Exists('..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets')" />
|
||||
<Import Project="..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets" Condition="Exists('..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets')" />
|
||||
</Project>
|
@ -9,7 +9,6 @@
|
||||
<package id="Newtonsoft.Json" version="9.0.2-beta1" targetFramework="monoandroid70" />
|
||||
<package id="SlideOverKit" version="2.1.4" targetFramework="monoandroid70" />
|
||||
<package id="Splat" version="1.6.2" targetFramework="monoandroid70" />
|
||||
<package id="StyleCop.MSBuild" version="5.0.0-alpha01" targetFramework="monoandroid70" developmentDependency="true" />
|
||||
<package id="System.Collections" version="4.0.11" targetFramework="monoandroid70" />
|
||||
<package id="System.Diagnostics.Debug" version="4.0.11" targetFramework="monoandroid70" />
|
||||
<package id="System.Dynamic.Runtime" version="4.0.11" targetFramework="monoandroid70" />
|
||||
|
@ -0,0 +1,17 @@
|
||||
using eShopOnContainers.Core.Services.Catalog;
|
||||
using System.Threading.Tasks;
|
||||
using Xunit;
|
||||
|
||||
namespace eShopOnContainers.UnitTests
|
||||
{
|
||||
public class BasketServiceTests
|
||||
{
|
||||
[Fact]
|
||||
public async Task GetFakeBasketTest()
|
||||
{
|
||||
var catalogMockService = new CatalogMockService();
|
||||
var result = await catalogMockService.GetCatalogAsync();
|
||||
Assert.NotEqual(0, result.Count);
|
||||
}
|
||||
}
|
||||
}
|
@ -1,4 +1,5 @@
|
||||
using eShopOnContainers.Core.Services.Catalog;
|
||||
using eShopOnContainers.Core.Services.RequestProvider;
|
||||
using System.Threading.Tasks;
|
||||
using Xunit;
|
||||
|
||||
@ -9,9 +10,58 @@ namespace eShopOnContainers.UnitTests
|
||||
[Fact]
|
||||
public async Task GetFakeCatalogTest()
|
||||
{
|
||||
var catalogMockService = new CatalogMockService();
|
||||
var result = await catalogMockService.GetCatalogAsync();
|
||||
Assert.NotEqual(0, result.Count);
|
||||
var catalogMockService = new CatalogMockService();
|
||||
var catalog = await catalogMockService.GetCatalogAsync();
|
||||
|
||||
Assert.NotEqual(0, catalog.Count);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetCatalogTest()
|
||||
{
|
||||
var requestProvider = new RequestProvider();
|
||||
var catalogService = new CatalogService(requestProvider);
|
||||
var catalog = await catalogService.GetCatalogAsync();
|
||||
|
||||
Assert.NotEqual(0, catalog.Count);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetFakeCatalogBrandTest()
|
||||
{
|
||||
var catalogMockService = new CatalogMockService();
|
||||
var catalogBrand = await catalogMockService.GetCatalogBrandAsync();
|
||||
|
||||
Assert.NotEqual(0, catalogBrand.Count);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetCatalogBrandTest()
|
||||
{
|
||||
var requestProvider = new RequestProvider();
|
||||
var catalogService = new CatalogService(requestProvider);
|
||||
var catalogBrand = await catalogService.GetCatalogBrandAsync();
|
||||
|
||||
Assert.NotEqual(0, catalogBrand.Count);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetFakeCatalogTypeTest()
|
||||
{
|
||||
var catalogMockService = new CatalogMockService();
|
||||
var catalogType = await catalogMockService.GetCatalogTypeAsync();
|
||||
|
||||
Assert.NotEqual(0, catalogType.Count);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public async Task GetCatalogTypeTest()
|
||||
{
|
||||
var requestProvider = new RequestProvider();
|
||||
var catalogService = new CatalogService(requestProvider);
|
||||
var catalogType = await catalogService.GetCatalogTypeAsync();
|
||||
|
||||
Assert.NotEqual(0, catalogType.Count);
|
||||
}
|
||||
}
|
||||
}
|
@ -1,4 +1,5 @@
|
||||
using eShopOnContainers.Core.Services.Orders;
|
||||
using eShopOnContainers.Core.Services.Basket;
|
||||
using eShopOnContainers.Core.Services.User;
|
||||
using System.Threading.Tasks;
|
||||
using Xunit;
|
||||
|
||||
@ -9,9 +10,12 @@ namespace eShopOnContainers.UnitTests
|
||||
[Fact]
|
||||
public async Task GetFakeOrdersTest()
|
||||
{
|
||||
var ordersMockService = new OrdersMockService();
|
||||
var result = await ordersMockService.GetOrdersAsync();
|
||||
Assert.NotEqual(0, result.Count);
|
||||
var userMockService = new UserMockService();
|
||||
var user = await userMockService.GetUserAsync();
|
||||
|
||||
var ordersMockService = new BasketMockService();
|
||||
var result = await ordersMockService.GetBasketAsync(user.GuidUser);
|
||||
Assert.NotEqual(0, result.Items.Count);
|
||||
}
|
||||
}
|
||||
}
|
@ -34,6 +34,7 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="BasketServiceTests.cs" />
|
||||
<Compile Include="CatalogServiceTests.cs" />
|
||||
<Compile Include="DummyTests.cs" />
|
||||
<Compile Include="OrdersServiceTests.cs" />
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 60 KiB |
@ -42,7 +42,7 @@
|
||||
<Setter Property="CornerRadius" Value="24" />
|
||||
<Setter Property="HorizontalAlignment" Value="Right" />
|
||||
<Setter Property="VerticalAlignment" Value="Top" />
|
||||
<Setter Property="Margin" Value="6, 0, 0, 6" />
|
||||
<Setter Property="Margin" Value="6, 2, 0, 6" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="BadgeTextStyle" TargetType="TextBlock">
|
||||
|
@ -8,6 +8,7 @@ using System.Linq;
|
||||
using Xamarin.Forms;
|
||||
using Xamarin.Forms.Internals;
|
||||
using Xamarin.Forms.Platform.UWP;
|
||||
using UI = Windows.UI;
|
||||
using Xaml = Windows.UI.Xaml;
|
||||
|
||||
[assembly: ExportRenderer(typeof(TabbedPage), typeof(CustomTabbedPageRenderer))]
|
||||
@ -34,20 +35,30 @@ namespace eShopOnContainers.Windows.Renderers
|
||||
|
||||
private void AddTabBadge(int tabIndex)
|
||||
{
|
||||
if(Element == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var element = Element.Children[tabIndex];
|
||||
|
||||
if (element != null)
|
||||
{
|
||||
|
||||
var dataTemplate = Xaml.Application.Current.Resources["TabbedPageHeaderTemplate"] as
|
||||
Xaml.DataTemplate;
|
||||
|
||||
Control.HeaderTemplate = dataTemplate;
|
||||
Control.SelectionChanged += OnControlSelectionChanged;
|
||||
|
||||
element.PropertyChanged += OnTabbedPagePropertyChanged;
|
||||
}
|
||||
}
|
||||
|
||||
private void OnControlSelectionChanged(object sender, Xaml.Controls.SelectionChangedEventArgs e)
|
||||
{
|
||||
SetSelectedTab((FormsPivot)sender);
|
||||
}
|
||||
|
||||
protected virtual void OnTabbedPagePropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
|
||||
{
|
||||
var element = sender as Element;
|
||||
@ -58,7 +69,7 @@ namespace eShopOnContainers.Windows.Renderers
|
||||
var tabItems = Control.GetDescendantsOfType<TabItem>();
|
||||
var tabItem = tabItems.FirstOrDefault(t => t.Label == ((Page)element).Title);
|
||||
|
||||
if(tabItem == null)
|
||||
if (tabItem == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
@ -75,6 +86,24 @@ namespace eShopOnContainers.Windows.Renderers
|
||||
ColorHelper.XamarinFormColorToWindowsColor(
|
||||
CustomTabbedPage.GetBadgeColor(element)));
|
||||
}
|
||||
|
||||
SetSelectedTab(Control);
|
||||
}
|
||||
|
||||
private void SetSelectedTab(FormsPivot pivot)
|
||||
{
|
||||
var tabItems = Control.GetDescendantsOfType<TabItem>();
|
||||
var tabItem = tabItems.FirstOrDefault(t => t.Label == ((Page)pivot.SelectedItem).Title);
|
||||
|
||||
if (tabItem == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
foreach (var item in tabItems)
|
||||
item.Opacity = 0.5;
|
||||
|
||||
tabItem.Opacity = 1.0;
|
||||
}
|
||||
}
|
||||
}
|
@ -130,6 +130,7 @@
|
||||
<ItemGroup>
|
||||
<Content Include="Assets\app_settings.png" />
|
||||
<Content Include="Assets\circle_button_background.png" />
|
||||
<Content Include="Assets\default_product.png" />
|
||||
<Content Include="Assets\fake_product_01.png" />
|
||||
<Content Include="Assets\fake_product_02.png" />
|
||||
<Content Include="Assets\fake_product_03.png" />
|
||||
|
@ -4,7 +4,6 @@
|
||||
"Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0",
|
||||
"Newtonsoft.Json": "9.0.1",
|
||||
"SlideOverKit": "2.1.4",
|
||||
"StyleCop.MSBuild": "5.0.0-alpha01",
|
||||
"Unity": "4.0.1",
|
||||
"Xamarin.FFImageLoading": "2.2.6-pre-232",
|
||||
"Xamarin.FFImageLoading.Forms": "2.2.6-pre-232",
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 60 KiB |
@ -369,14 +369,15 @@
|
||||
<ItemGroup>
|
||||
<BundleResource Include="Resources\noimage.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<BundleResource Include="Resources\default_product.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>Este proyecto hace referencia a los paquetes NuGet que faltan en este equipo. Use la restauración de paquetes NuGet para descargarlos. Para obtener más información, consulte http://go.microsoft.com/fwlink/?LinkID=322105. El archivo que falta es {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets'))" />
|
||||
<Error Condition="!Exists('..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets" Condition="Exists('..\..\packages\StyleCop.MSBuild.5.0.0-alpha01\build\StyleCop.MSBuild.targets')" />
|
||||
<Import Project="..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets" Condition="Exists('..\..\packages\Xamarin.Forms.2.3.2.127\build\portable-win+net45+wp80+win81+wpa81+MonoAndroid10+MonoTouch10+Xamarin.iOS10\Xamarin.Forms.targets')" />
|
||||
</Project>
|
@ -7,7 +7,6 @@
|
||||
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="xamarinios10" />
|
||||
<package id="SlideOverKit" version="2.1.4" targetFramework="xamarinios10" />
|
||||
<package id="Splat" version="1.6.2" targetFramework="xamarinios10" />
|
||||
<package id="StyleCop.MSBuild" version="5.0.0-alpha01" targetFramework="xamarinios10" developmentDependency="true" />
|
||||
<package id="Unity" version="4.0.1" targetFramework="xamarinios10" />
|
||||
<package id="WebP.Touch" version="1.0.2" targetFramework="xamarinios10" />
|
||||
<package id="Xamarin.FFImageLoading" version="2.2.6-pre-232" targetFramework="xamarinios10" />
|
||||
|
@ -18,8 +18,14 @@
|
||||
var builder = new ConfigurationBuilder()
|
||||
.SetBasePath(env.ContentRootPath)
|
||||
.AddJsonFile($"settings.json", optional: false, reloadOnChange: true)
|
||||
.AddJsonFile($"settings.{env.EnvironmentName}.json", optional: true)
|
||||
.AddEnvironmentVariables();
|
||||
.AddJsonFile($"settings.{env.EnvironmentName}.json", optional: true);
|
||||
|
||||
if (env.IsDevelopment())
|
||||
{
|
||||
builder.AddUserSecrets();
|
||||
}
|
||||
|
||||
builder.AddEnvironmentVariables();
|
||||
|
||||
Configuration = builder.Build();
|
||||
}
|
||||
|
@ -10,6 +10,7 @@
|
||||
"Microsoft.AspNetCore.Server.Kestrel": "1.0.1",
|
||||
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
|
||||
"Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
|
||||
"Microsoft.Extensions.Configuration.UserSecrets": "1.0.0",
|
||||
"Microsoft.Extensions.Configuration.Json": "1.0.0",
|
||||
"Microsoft.Extensions.Logging": "1.0.0",
|
||||
"Microsoft.Extensions.Logging.Console": "1.0.0",
|
||||
@ -53,5 +54,6 @@
|
||||
"Dockerfile"
|
||||
]
|
||||
},
|
||||
"scripts": {}
|
||||
"scripts": {},
|
||||
"userSecretsId": "aspnet-Catalog.API-20161122013618"
|
||||
}
|
@ -1,41 +0,0 @@
|
||||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": ".NET Core Launch (web)",
|
||||
"type": "coreclr",
|
||||
"request": "launch",
|
||||
"preLaunchTask": "build",
|
||||
"program": "${workspaceRoot}\\bin\\Debug\\netcoreapp1.0\\Ordering.API.dll",
|
||||
"args": [],
|
||||
"cwd": "${workspaceRoot}",
|
||||
"stopAtEntry": false,
|
||||
"launchBrowser": {
|
||||
"enabled": true,
|
||||
"args": "${auto-detect-url}",
|
||||
"windows": {
|
||||
"command": "cmd.exe",
|
||||
"args": "/C start ${auto-detect-url}"
|
||||
},
|
||||
"osx": {
|
||||
"command": "open"
|
||||
},
|
||||
"linux": {
|
||||
"command": "xdg-open"
|
||||
}
|
||||
},
|
||||
"env": {
|
||||
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||
},
|
||||
"sourceFileMap": {
|
||||
"/Views": "${workspaceRoot}/Views"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": ".NET Core Attach",
|
||||
"type": "coreclr",
|
||||
"request": "attach",
|
||||
"processId": "${command.pickProcess}"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
{
|
||||
"version": "0.1.0",
|
||||
"command": "dotnet",
|
||||
"isShellCommand": true,
|
||||
"args": [],
|
||||
"tasks": [
|
||||
{
|
||||
"taskName": "build",
|
||||
"args": [
|
||||
"${workspaceRoot}\\project.json"
|
||||
],
|
||||
"isBuildCommand": true,
|
||||
"problemMatcher": "$msCompile"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Controllers
|
||||
{
|
||||
[Route("api/[controller]")]
|
||||
public class EnvironmentInfoController : Controller
|
||||
{
|
||||
// GET api/environmentInfo/machinename
|
||||
[HttpGet("machinename")]
|
||||
public dynamic GetMachineName()
|
||||
{
|
||||
return new
|
||||
{
|
||||
InstanceName = Environment.MachineName
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
}
|
@ -1,129 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.UnitOfWork;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.Domain.Contracts;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.Queries;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Controllers
|
||||
{
|
||||
[Route("api/[controller]")]
|
||||
public class OrderingController : Controller
|
||||
{
|
||||
private IOrderRepository _orderRepository;
|
||||
private IOrderdingQueries _queries;
|
||||
|
||||
//private OrderingDbContext _context;
|
||||
|
||||
public OrderingController(IOrderRepository orderRepository,
|
||||
IOrderdingQueries orderingQueries //,
|
||||
//OrderingDbContext context
|
||||
)
|
||||
{
|
||||
//Injected objects from the IoC container
|
||||
_orderRepository = orderRepository;
|
||||
_queries = orderingQueries;
|
||||
//_context = context;
|
||||
}
|
||||
|
||||
|
||||
// GET api/ordering/orders
|
||||
[HttpGet("orders")]
|
||||
public async Task<IActionResult> GetAllOrders()
|
||||
{
|
||||
dynamic response = await _queries.GetAllOrdersIncludingValueObjectsAndChildEntities();
|
||||
return Ok(response);
|
||||
}
|
||||
|
||||
|
||||
// GET api/ordering/orders/xxxGUIDxxxx
|
||||
[HttpGet("orders/{orderId:Guid}")]
|
||||
public async Task<IActionResult> GetOrderById(Guid orderId)
|
||||
{
|
||||
dynamic response = await _queries.GetOrderById(orderId);
|
||||
return Ok(response);
|
||||
}
|
||||
|
||||
//(CDLTLL) - Using parameters
|
||||
//Alternate method if using several parameters instead of part of the URL
|
||||
// GET api/ordering/orders/?orderId=xxxGUIDxxx&otherParam=value
|
||||
//[HttpGet("orders")]
|
||||
//public Order GetOrderByGuid([FromUri] Guid orderId, [FromUri] string otherParam)
|
||||
|
||||
|
||||
// POST api/ordering/orders/create
|
||||
[HttpPut("orders/create")]
|
||||
public async Task<IActionResult> Post([FromBody]Order order)
|
||||
{
|
||||
_orderRepository.Add(order);
|
||||
int numChanges = await _orderRepository.UnitOfWork.CommitAsync();
|
||||
return Ok(numChanges);
|
||||
}
|
||||
|
||||
// PUT api/ordering/orders/xxxOrderGUIDxxxx/update
|
||||
[HttpPut("orders/{orderId:Guid}/update")]
|
||||
public async Task<IActionResult> UpdateOrder(Guid orderID, [FromBody] Order orderToUpdate)
|
||||
{
|
||||
_orderRepository.Update(orderToUpdate);
|
||||
int numChanges = await _orderRepository.UnitOfWork.CommitAsync();
|
||||
return Ok(numChanges);
|
||||
}
|
||||
|
||||
// DELETE api/ordering/orders/xxxOrderGUIDxxxx
|
||||
[HttpDelete("orders/{orderId:Guid}/remove")]
|
||||
public async Task<IActionResult> Remove(Guid id)
|
||||
{
|
||||
await _orderRepository.Remove(id);
|
||||
int numChanges = await _orderRepository.UnitOfWork.CommitAsync();
|
||||
return Ok(numChanges);
|
||||
}
|
||||
|
||||
|
||||
// GET api/ordering/orders/add_test_data_and_get_all
|
||||
[HttpGet("orders/add_test_data_and_get_all")]
|
||||
public async Task<IActionResult> AddTestDataAndGetAllOrders()
|
||||
{
|
||||
//TEST ADDING ORDERS *********************************
|
||||
//Create generic Address ValueObject
|
||||
Address sampleAddress = new Address("15703 NE 61st Ct.",
|
||||
"Redmond",
|
||||
"Washington",
|
||||
"WA",
|
||||
"United States",
|
||||
"US",
|
||||
"98052",
|
||||
47.661492,
|
||||
-122.131309
|
||||
);
|
||||
//Create sample Orders
|
||||
Order order1 = new Order(Guid.NewGuid(), sampleAddress, sampleAddress);
|
||||
|
||||
//Add a few OrderItems
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 2, 25, 30);
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 1, 58, 0);
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 1, 60, 0);
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 3, 12, 0);
|
||||
order1.AddNewOrderItem(Guid.NewGuid(), 5, 3, 0);
|
||||
|
||||
_orderRepository.Add(order1);
|
||||
int numRecs = await _orderRepository.UnitOfWork.CommitAsync();
|
||||
|
||||
//_context.Orders.Add(order1);
|
||||
//_context.SaveChanges();
|
||||
|
||||
//*****************************************************
|
||||
|
||||
dynamic response = await _queries.GetAllOrdersIncludingValueObjectsAndChildEntities();
|
||||
return Ok(response);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,98 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Controllers
|
||||
{
|
||||
using Application.Commands;
|
||||
using Application.Queries;
|
||||
using MediatR;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Models;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
[Route("api/v1/[controller]")]
|
||||
public class OrdersController : Controller
|
||||
{
|
||||
private readonly IMediator _mediator;
|
||||
private readonly IOrderQueries _orderQueries;
|
||||
|
||||
public OrdersController(IMediator mediator, IOrderQueries orderQueries)
|
||||
{
|
||||
if (mediator == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(mediator));
|
||||
}
|
||||
|
||||
if (orderQueries == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(orderQueries));
|
||||
}
|
||||
|
||||
_mediator = mediator;
|
||||
_orderQueries = orderQueries;
|
||||
}
|
||||
|
||||
[Route("new")]
|
||||
[HttpPost]
|
||||
public async Task<IActionResult> AddOrder([FromBody]NewOrderViewModel order)
|
||||
{
|
||||
var newOrderRequest = new NewOrderRequest()
|
||||
{
|
||||
Buyer =GetUserName(), //TODO
|
||||
CardTypeId = 1, //TODO
|
||||
CardHolderName = order.CardHolderName,
|
||||
CardNumber = order.CardNumber,
|
||||
CardExpiration = order.CardExpiration,
|
||||
CardSecurityNumber = order.CardSecurityNumber,
|
||||
State = order.ShippingState,
|
||||
City = order.ShippingCity,
|
||||
Country = order.ShippingCountry,
|
||||
Street = order.ShippingStreet
|
||||
};
|
||||
|
||||
var added = await _mediator.SendAsync(newOrderRequest);
|
||||
|
||||
if (added)
|
||||
{
|
||||
return Ok();
|
||||
}
|
||||
|
||||
return BadRequest();
|
||||
}
|
||||
|
||||
[Route("{orderId:int}")]
|
||||
[HttpGet]
|
||||
public async Task<IActionResult> GetOrder(int orderId)
|
||||
{
|
||||
var order = await _orderQueries.GetOrder(orderId);
|
||||
|
||||
|
||||
return Ok(order);
|
||||
}
|
||||
|
||||
[Route("")]
|
||||
[HttpGet]
|
||||
public async Task<IActionResult> GetOrders()
|
||||
{
|
||||
var orders = await _orderQueries.GetOrders();
|
||||
|
||||
|
||||
return Ok(orders);
|
||||
}
|
||||
|
||||
[Route("cardtypes")]
|
||||
[HttpGet]
|
||||
public async Task<IActionResult> GetCardTypes()
|
||||
{
|
||||
var cardTypes = await _orderQueries.GetCardTypes();
|
||||
|
||||
return Ok(cardTypes);
|
||||
}
|
||||
|
||||
string GetUserName()
|
||||
{
|
||||
return "MOCK";
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,14 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Infrastructure.ActionResults
|
||||
{
|
||||
using AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
public class InternalServerErrorObjectResult : ObjectResult
|
||||
{
|
||||
public InternalServerErrorObjectResult(object error)
|
||||
: base(error)
|
||||
{
|
||||
StatusCode = StatusCodes.Status500InternalServerError;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
|
||||
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Infrastructure.AutofacModules
|
||||
{
|
||||
using Application.Queries;
|
||||
using Autofac;
|
||||
using Domain.Repositories;
|
||||
using Ordering.Infrastructure.Repositories;
|
||||
|
||||
public class ApplicationModule
|
||||
:Autofac.Module
|
||||
{
|
||||
protected override void Load(ContainerBuilder builder)
|
||||
{
|
||||
builder.RegisterType<OrderQueries>()
|
||||
.As<IOrderQueries>()
|
||||
.InstancePerLifetimeScope();
|
||||
|
||||
builder.RegisterType<BuyerRepository>()
|
||||
.As<IBuyerRepository>()
|
||||
.InstancePerLifetimeScope();
|
||||
|
||||
builder.RegisterType<OrderRepository>()
|
||||
.As<IOrderRepository>()
|
||||
.InstancePerLifetimeScope();
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Infrastructure.AutofacModules
|
||||
{
|
||||
using Application.Commands;
|
||||
using Application.Decorators;
|
||||
using Autofac;
|
||||
using Autofac.Core;
|
||||
using MediatR;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
|
||||
public class MediatorModule : Autofac.Module
|
||||
{
|
||||
protected override void Load(ContainerBuilder builder)
|
||||
{
|
||||
builder.RegisterAssemblyTypes(typeof(IMediator).GetTypeInfo().Assembly)
|
||||
.AsImplementedInterfaces();
|
||||
|
||||
builder.RegisterAssemblyTypes(typeof(NewOrderRequest).GetTypeInfo().Assembly)
|
||||
.As(o => o.GetInterfaces()
|
||||
.Where(i => i.IsClosedTypeOf(typeof(IAsyncRequestHandler<,>)))
|
||||
.Select(i => new KeyedService("IAsyncRequestHandler", i)));
|
||||
|
||||
builder.Register<SingleInstanceFactory>(context =>
|
||||
{
|
||||
var componentContext = context.Resolve<IComponentContext>();
|
||||
|
||||
return t => componentContext.Resolve(t);
|
||||
});
|
||||
|
||||
builder.Register<MultiInstanceFactory>(context =>
|
||||
{
|
||||
var componentContext = context.Resolve<IComponentContext>();
|
||||
|
||||
return t => (IEnumerable<object>)componentContext.Resolve(typeof(IEnumerable<>).MakeGenericType(t));
|
||||
});
|
||||
|
||||
builder.RegisterGenericDecorator(typeof(LogDecorator<,>),
|
||||
typeof(IAsyncRequestHandler<,>),
|
||||
"IAsyncRequestHandler");
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,45 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Infrastructure.Filters
|
||||
{
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.AspNetCore.Mvc.Filters;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.API.Infrastructure.ActionResults;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
public class HttpGlobalExceptionFilter : IExceptionFilter
|
||||
{
|
||||
private readonly IHostingEnvironment env;
|
||||
private readonly ILogger<HttpGlobalExceptionFilter> logger;
|
||||
|
||||
public HttpGlobalExceptionFilter(IHostingEnvironment env, ILogger<HttpGlobalExceptionFilter> logger)
|
||||
{
|
||||
this.env = env;
|
||||
this.logger = logger;
|
||||
}
|
||||
|
||||
public void OnException(ExceptionContext context)
|
||||
{
|
||||
logger.LogError(new EventId(context.Exception.HResult),
|
||||
context.Exception,
|
||||
context.Exception.Message);
|
||||
|
||||
var json = new JsonErrorResponse
|
||||
{
|
||||
Messages = new[] { "An error ocurr.Try it again." }
|
||||
};
|
||||
|
||||
if (env.IsDevelopment())
|
||||
{
|
||||
json.DeveloperMeesage = context.Exception;
|
||||
}
|
||||
|
||||
context.Result = new InternalServerErrorObjectResult(json);
|
||||
}
|
||||
|
||||
private class JsonErrorResponse
|
||||
{
|
||||
public string[] Messages { get; set; }
|
||||
|
||||
public object DeveloperMeesage { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
227
src/Services/Ordering/Ordering.API/Infrastructure/Migrations/20161124133626_InitialModel.Designer.cs
generated
Normal file
227
src/Services/Ordering/Ordering.API/Infrastructure/Migrations/20161124133626_InitialModel.Designer.cs
generated
Normal file
@ -0,0 +1,227 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.Infrastructure;
|
||||
|
||||
namespace Ordering.API.Infrastructure.Migrations
|
||||
{
|
||||
[DbContext(typeof(OrderingContext))]
|
||||
[Migration("20161124133626_InitialModel")]
|
||||
partial class InitialModel
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "1.0.1")
|
||||
.HasAnnotation("SqlServer:Sequence:ordering.buyerseq", "'buyerseq', 'ordering', '1', '10', '', '', 'Int64', 'False'")
|
||||
.HasAnnotation("SqlServer:Sequence:ordering.orderseq", "'orderseq', 'ordering', '1', '10', '', '', 'Int64', 'False'")
|
||||
.HasAnnotation("SqlServer:Sequence:ordering.paymentseq", "'paymentseq', 'ordering', '1', '10', '', '', 'Int64', 'False'")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Address", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("City");
|
||||
|
||||
b.Property<string>("Country");
|
||||
|
||||
b.Property<string>("State");
|
||||
|
||||
b.Property<string>("Street");
|
||||
|
||||
b.Property<string>("ZipCode");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("address","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Buyer", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasAnnotation("SqlServer:HiLoSequenceName", "buyerseq")
|
||||
.HasAnnotation("SqlServer:HiLoSequenceSchema", "ordering")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo);
|
||||
|
||||
b.Property<string>("FullName")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 200);
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("FullName")
|
||||
.IsUnique();
|
||||
|
||||
b.ToTable("buyers","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.CardType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValue(1);
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 200);
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("cardtypes","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Order", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasAnnotation("SqlServer:HiLoSequenceName", "orderseq")
|
||||
.HasAnnotation("SqlServer:HiLoSequenceSchema", "ordering")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo);
|
||||
|
||||
b.Property<int>("BuyerId");
|
||||
|
||||
b.Property<DateTime>("OrderDate");
|
||||
|
||||
b.Property<int>("PaymentId");
|
||||
|
||||
b.Property<int?>("ShippingAddressId");
|
||||
|
||||
b.Property<int>("StatusId");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BuyerId");
|
||||
|
||||
b.HasIndex("PaymentId");
|
||||
|
||||
b.HasIndex("ShippingAddressId");
|
||||
|
||||
b.HasIndex("StatusId");
|
||||
|
||||
b.ToTable("orders","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.OrderItem", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<decimal>("Discount");
|
||||
|
||||
b.Property<int>("OrderId");
|
||||
|
||||
b.Property<int>("ProductId");
|
||||
|
||||
b.Property<string>("ProductName")
|
||||
.IsRequired();
|
||||
|
||||
b.Property<decimal>("UnitPrice");
|
||||
|
||||
b.Property<int>("Units")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasAnnotation("SqlServer:DefaultValue", 1);
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OrderId");
|
||||
|
||||
b.ToTable("orderItems","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.OrderStatus", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValue(1);
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 200);
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("orderstatus","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Payment", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasAnnotation("SqlServer:HiLoSequenceName", "paymentseq")
|
||||
.HasAnnotation("SqlServer:HiLoSequenceSchema", "ordering")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo);
|
||||
|
||||
b.Property<int>("BuyerId");
|
||||
|
||||
b.Property<string>("CardHolderName")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 200);
|
||||
|
||||
b.Property<string>("CardNumber")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 25);
|
||||
|
||||
b.Property<int>("CardTypeId");
|
||||
|
||||
b.Property<DateTime>("Expiration");
|
||||
|
||||
b.Property<string>("SecurityNumber");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BuyerId");
|
||||
|
||||
b.HasIndex("CardTypeId");
|
||||
|
||||
b.ToTable("payments","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Order", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Buyer", "Buyer")
|
||||
.WithMany()
|
||||
.HasForeignKey("BuyerId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Payment", "Payment")
|
||||
.WithMany()
|
||||
.HasForeignKey("PaymentId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Address", "ShippingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("ShippingAddressId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.OrderStatus", "Status")
|
||||
.WithMany()
|
||||
.HasForeignKey("StatusId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.OrderItem", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Order")
|
||||
.WithMany("OrderItems")
|
||||
.HasForeignKey("OrderId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Payment", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Buyer")
|
||||
.WithMany("Payments")
|
||||
.HasForeignKey("BuyerId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.CardType", "CardType")
|
||||
.WithMany()
|
||||
.HasForeignKey("CardTypeId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,283 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
|
||||
namespace Ordering.API.Infrastructure.Migrations
|
||||
{
|
||||
public partial class InitialModel : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.EnsureSchema(
|
||||
name: "ordering");
|
||||
|
||||
migrationBuilder.CreateSequence(
|
||||
name: "buyerseq",
|
||||
schema: "ordering",
|
||||
incrementBy: 10);
|
||||
|
||||
migrationBuilder.CreateSequence(
|
||||
name: "orderseq",
|
||||
schema: "ordering",
|
||||
incrementBy: 10);
|
||||
|
||||
migrationBuilder.CreateSequence(
|
||||
name: "paymentseq",
|
||||
schema: "ordering",
|
||||
incrementBy: 10);
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "address",
|
||||
schema: "ordering",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn),
|
||||
City = table.Column<string>(nullable: true),
|
||||
Country = table.Column<string>(nullable: true),
|
||||
State = table.Column<string>(nullable: true),
|
||||
Street = table.Column<string>(nullable: true),
|
||||
ZipCode = table.Column<string>(nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_address", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "buyers",
|
||||
schema: "ordering",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false),
|
||||
FullName = table.Column<string>(maxLength: 200, nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_buyers", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "cardtypes",
|
||||
schema: "ordering",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false, defaultValue: 1),
|
||||
Name = table.Column<string>(maxLength: 200, nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_cardtypes", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "orderstatus",
|
||||
schema: "ordering",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false, defaultValue: 1),
|
||||
Name = table.Column<string>(maxLength: 200, nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_orderstatus", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "payments",
|
||||
schema: "ordering",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false),
|
||||
BuyerId = table.Column<int>(nullable: false),
|
||||
CardHolderName = table.Column<string>(maxLength: 200, nullable: false),
|
||||
CardNumber = table.Column<string>(maxLength: 25, nullable: false),
|
||||
CardTypeId = table.Column<int>(nullable: false),
|
||||
Expiration = table.Column<DateTime>(nullable: false),
|
||||
SecurityNumber = table.Column<string>(nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_payments", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_payments_buyers_BuyerId",
|
||||
column: x => x.BuyerId,
|
||||
principalSchema: "ordering",
|
||||
principalTable: "buyers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_payments_cardtypes_CardTypeId",
|
||||
column: x => x.CardTypeId,
|
||||
principalSchema: "ordering",
|
||||
principalTable: "cardtypes",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "orders",
|
||||
schema: "ordering",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false),
|
||||
BuyerId = table.Column<int>(nullable: false),
|
||||
OrderDate = table.Column<DateTime>(nullable: false),
|
||||
PaymentId = table.Column<int>(nullable: false),
|
||||
ShippingAddressId = table.Column<int>(nullable: true),
|
||||
StatusId = table.Column<int>(nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_orders", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_orders_buyers_BuyerId",
|
||||
column: x => x.BuyerId,
|
||||
principalSchema: "ordering",
|
||||
principalTable: "buyers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_orders_payments_PaymentId",
|
||||
column: x => x.PaymentId,
|
||||
principalSchema: "ordering",
|
||||
principalTable: "payments",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
table.ForeignKey(
|
||||
name: "FK_orders_address_ShippingAddressId",
|
||||
column: x => x.ShippingAddressId,
|
||||
principalSchema: "ordering",
|
||||
principalTable: "address",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
table.ForeignKey(
|
||||
name: "FK_orders_orderstatus_StatusId",
|
||||
column: x => x.StatusId,
|
||||
principalSchema: "ordering",
|
||||
principalTable: "orderstatus",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "orderItems",
|
||||
schema: "ordering",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(nullable: false)
|
||||
.Annotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn),
|
||||
Discount = table.Column<decimal>(nullable: false),
|
||||
OrderId = table.Column<int>(nullable: false),
|
||||
ProductId = table.Column<int>(nullable: false),
|
||||
ProductName = table.Column<string>(nullable: false),
|
||||
UnitPrice = table.Column<decimal>(nullable: false),
|
||||
Units = table.Column<int>(nullable: false, defaultValue: 1)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_orderItems", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_orderItems_orders_OrderId",
|
||||
column: x => x.OrderId,
|
||||
principalSchema: "ordering",
|
||||
principalTable: "orders",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_buyers_FullName",
|
||||
schema: "ordering",
|
||||
table: "buyers",
|
||||
column: "FullName",
|
||||
unique: true);
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_orders_BuyerId",
|
||||
schema: "ordering",
|
||||
table: "orders",
|
||||
column: "BuyerId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_orders_PaymentId",
|
||||
schema: "ordering",
|
||||
table: "orders",
|
||||
column: "PaymentId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_orders_ShippingAddressId",
|
||||
schema: "ordering",
|
||||
table: "orders",
|
||||
column: "ShippingAddressId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_orders_StatusId",
|
||||
schema: "ordering",
|
||||
table: "orders",
|
||||
column: "StatusId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_orderItems_OrderId",
|
||||
schema: "ordering",
|
||||
table: "orderItems",
|
||||
column: "OrderId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_payments_BuyerId",
|
||||
schema: "ordering",
|
||||
table: "payments",
|
||||
column: "BuyerId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_payments_CardTypeId",
|
||||
schema: "ordering",
|
||||
table: "payments",
|
||||
column: "CardTypeId");
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropSequence(
|
||||
name: "buyerseq",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropSequence(
|
||||
name: "orderseq",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropSequence(
|
||||
name: "paymentseq",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "orderItems",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "orders",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "payments",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "address",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "orderstatus",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "buyers",
|
||||
schema: "ordering");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "cardtypes",
|
||||
schema: "ordering");
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,226 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.Infrastructure;
|
||||
|
||||
namespace Ordering.API.Infrastructure.Migrations
|
||||
{
|
||||
[DbContext(typeof(OrderingContext))]
|
||||
partial class OrderingContextModelSnapshot : ModelSnapshot
|
||||
{
|
||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "1.0.1")
|
||||
.HasAnnotation("SqlServer:Sequence:ordering.buyerseq", "'buyerseq', 'ordering', '1', '10', '', '', 'Int64', 'False'")
|
||||
.HasAnnotation("SqlServer:Sequence:ordering.orderseq", "'orderseq', 'ordering', '1', '10', '', '', 'Int64', 'False'")
|
||||
.HasAnnotation("SqlServer:Sequence:ordering.paymentseq", "'paymentseq', 'ordering', '1', '10', '', '', 'Int64', 'False'")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Address", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("City");
|
||||
|
||||
b.Property<string>("Country");
|
||||
|
||||
b.Property<string>("State");
|
||||
|
||||
b.Property<string>("Street");
|
||||
|
||||
b.Property<string>("ZipCode");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("address","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Buyer", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasAnnotation("SqlServer:HiLoSequenceName", "buyerseq")
|
||||
.HasAnnotation("SqlServer:HiLoSequenceSchema", "ordering")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo);
|
||||
|
||||
b.Property<string>("FullName")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 200);
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("FullName")
|
||||
.IsUnique();
|
||||
|
||||
b.ToTable("buyers","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.CardType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValue(1);
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 200);
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("cardtypes","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Order", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasAnnotation("SqlServer:HiLoSequenceName", "orderseq")
|
||||
.HasAnnotation("SqlServer:HiLoSequenceSchema", "ordering")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo);
|
||||
|
||||
b.Property<int>("BuyerId");
|
||||
|
||||
b.Property<DateTime>("OrderDate");
|
||||
|
||||
b.Property<int>("PaymentId");
|
||||
|
||||
b.Property<int?>("ShippingAddressId");
|
||||
|
||||
b.Property<int>("StatusId");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BuyerId");
|
||||
|
||||
b.HasIndex("PaymentId");
|
||||
|
||||
b.HasIndex("ShippingAddressId");
|
||||
|
||||
b.HasIndex("StatusId");
|
||||
|
||||
b.ToTable("orders","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.OrderItem", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<decimal>("Discount");
|
||||
|
||||
b.Property<int>("OrderId");
|
||||
|
||||
b.Property<int>("ProductId");
|
||||
|
||||
b.Property<string>("ProductName")
|
||||
.IsRequired();
|
||||
|
||||
b.Property<decimal>("UnitPrice");
|
||||
|
||||
b.Property<int>("Units")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasAnnotation("SqlServer:DefaultValue", 1);
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OrderId");
|
||||
|
||||
b.ToTable("orderItems","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.OrderStatus", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValue(1);
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 200);
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("orderstatus","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Payment", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasAnnotation("SqlServer:HiLoSequenceName", "paymentseq")
|
||||
.HasAnnotation("SqlServer:HiLoSequenceSchema", "ordering")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.SequenceHiLo);
|
||||
|
||||
b.Property<int>("BuyerId");
|
||||
|
||||
b.Property<string>("CardHolderName")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 200);
|
||||
|
||||
b.Property<string>("CardNumber")
|
||||
.IsRequired()
|
||||
.HasAnnotation("MaxLength", 25);
|
||||
|
||||
b.Property<int>("CardTypeId");
|
||||
|
||||
b.Property<DateTime>("Expiration");
|
||||
|
||||
b.Property<string>("SecurityNumber");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BuyerId");
|
||||
|
||||
b.HasIndex("CardTypeId");
|
||||
|
||||
b.ToTable("payments","ordering");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Order", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Buyer", "Buyer")
|
||||
.WithMany()
|
||||
.HasForeignKey("BuyerId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Payment", "Payment")
|
||||
.WithMany()
|
||||
.HasForeignKey("PaymentId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Address", "ShippingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("ShippingAddressId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.OrderStatus", "Status")
|
||||
.WithMany()
|
||||
.HasForeignKey("StatusId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.OrderItem", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Order")
|
||||
.WithMany("OrderItems")
|
||||
.HasForeignKey("OrderId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.Payment", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.Buyer")
|
||||
.WithMany("Payments")
|
||||
.HasForeignKey("BuyerId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.CardType", "CardType")
|
||||
.WithMany()
|
||||
.HasForeignKey("CardTypeId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Infrastructure
|
||||
{
|
||||
using AspNetCore.Builder;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.Domain;
|
||||
using Ordering.Infrastructure;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class OrderingContextSeed
|
||||
{
|
||||
public static async Task SeedAsync(IApplicationBuilder applicationBuilder)
|
||||
{
|
||||
var context = (OrderingContext)applicationBuilder
|
||||
.ApplicationServices.GetService(typeof(OrderingContext));
|
||||
|
||||
using (context)
|
||||
{
|
||||
context.Database.Migrate();
|
||||
|
||||
if (!context.CardTypes.Any())
|
||||
{
|
||||
context.CardTypes.Add(CardType.Amex);
|
||||
context.CardTypes.Add(CardType.Visa);
|
||||
context.CardTypes.Add(CardType.MasterCard);
|
||||
|
||||
await context.SaveChangesAsync();
|
||||
}
|
||||
|
||||
if (!context.OrderStatus.Any())
|
||||
{
|
||||
context.OrderStatus.Add(OrderStatus.Canceled);
|
||||
context.OrderStatus.Add(OrderStatus.InProcess);
|
||||
context.OrderStatus.Add(OrderStatus.Shipped);
|
||||
}
|
||||
|
||||
await context.SaveChangesAsync();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
@ -1,121 +0,0 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.UnitOfWork;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
[DbContext(typeof(OrderingDbContext))]
|
||||
[Migration("20160913204939_Migration1")]
|
||||
partial class Migration1
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "1.0.0-rtm-21431")
|
||||
.HasAnnotation("Relational:Sequence:shared.OrderSequences", "'OrderSequences', 'shared', '1001', '1', '', '', 'Int32', 'False'")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("City");
|
||||
|
||||
b.Property<string>("Country");
|
||||
|
||||
b.Property<string>("CountryCode");
|
||||
|
||||
b.Property<double>("Latitude");
|
||||
|
||||
b.Property<double>("Longitude");
|
||||
|
||||
b.Property<string>("State");
|
||||
|
||||
b.Property<string>("StateCode");
|
||||
|
||||
b.Property<string>("Street");
|
||||
|
||||
b.Property<string>("ZipCode");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("Address");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<Guid?>("BillingAddressId");
|
||||
|
||||
b.Property<Guid>("BuyerId");
|
||||
|
||||
b.Property<DateTime>("OrderDate");
|
||||
|
||||
b.Property<int>("SequenceNumber")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValueSql("NEXT VALUE FOR shared.OrderSequences");
|
||||
|
||||
b.Property<Guid?>("ShippingAddressId");
|
||||
|
||||
b.Property<int>("Status");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BillingAddressId");
|
||||
|
||||
b.HasIndex("ShippingAddressId");
|
||||
|
||||
b.ToTable("Orders");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<decimal>("Discount");
|
||||
|
||||
b.Property<int>("FulfillmentRemaining");
|
||||
|
||||
b.Property<Guid>("OrderId");
|
||||
|
||||
b.Property<Guid>("ProductId");
|
||||
|
||||
b.Property<int>("Quantity");
|
||||
|
||||
b.Property<decimal>("UnitPrice");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OrderId");
|
||||
|
||||
b.ToTable("OrderItem");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "BillingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("BillingAddressId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "ShippingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("ShippingAddressId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order")
|
||||
.WithMany("OrderItems")
|
||||
.HasForeignKey("OrderId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -1,123 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
public partial class Migration1 : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.EnsureSchema(
|
||||
name: "shared");
|
||||
|
||||
migrationBuilder.CreateSequence<int>(
|
||||
name: "OrderSequences",
|
||||
schema: "shared",
|
||||
startValue: 1001L);
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "Address",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<Guid>(nullable: false),
|
||||
City = table.Column<string>(nullable: true),
|
||||
Country = table.Column<string>(nullable: true),
|
||||
CountryCode = table.Column<string>(nullable: true),
|
||||
Latitude = table.Column<double>(nullable: false),
|
||||
Longitude = table.Column<double>(nullable: false),
|
||||
State = table.Column<string>(nullable: true),
|
||||
StateCode = table.Column<string>(nullable: true),
|
||||
Street = table.Column<string>(nullable: true),
|
||||
ZipCode = table.Column<string>(nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_Address", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "Orders",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<Guid>(nullable: false),
|
||||
BillingAddressId = table.Column<Guid>(nullable: true),
|
||||
BuyerId = table.Column<Guid>(nullable: false),
|
||||
OrderDate = table.Column<DateTime>(nullable: false),
|
||||
SequenceNumber = table.Column<int>(nullable: false, defaultValueSql: "NEXT VALUE FOR shared.OrderSequences"),
|
||||
ShippingAddressId = table.Column<Guid>(nullable: true),
|
||||
Status = table.Column<int>(nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_Orders", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_Orders_Address_BillingAddressId",
|
||||
column: x => x.BillingAddressId,
|
||||
principalTable: "Address",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
table.ForeignKey(
|
||||
name: "FK_Orders_Address_ShippingAddressId",
|
||||
column: x => x.ShippingAddressId,
|
||||
principalTable: "Address",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Restrict);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "OrderItem",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<Guid>(nullable: false),
|
||||
Discount = table.Column<decimal>(nullable: false),
|
||||
FulfillmentRemaining = table.Column<int>(nullable: false),
|
||||
OrderId = table.Column<Guid>(nullable: false),
|
||||
ProductId = table.Column<Guid>(nullable: false),
|
||||
Quantity = table.Column<int>(nullable: false),
|
||||
UnitPrice = table.Column<decimal>(nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_OrderItem", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_OrderItem_Orders_OrderId",
|
||||
column: x => x.OrderId,
|
||||
principalTable: "Orders",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_Orders_BillingAddressId",
|
||||
table: "Orders",
|
||||
column: "BillingAddressId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_Orders_ShippingAddressId",
|
||||
table: "Orders",
|
||||
column: "ShippingAddressId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_OrderItem_OrderId",
|
||||
table: "OrderItem",
|
||||
column: "OrderId");
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropSequence(
|
||||
name: "OrderSequences",
|
||||
schema: "shared");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "OrderItem");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "Orders");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "Address");
|
||||
}
|
||||
}
|
||||
}
|
@ -1,121 +0,0 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.UnitOfWork;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
[DbContext(typeof(OrderingDbContext))]
|
||||
[Migration("20161005002014_Migration_Baseline")]
|
||||
partial class Migration_Baseline
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "1.0.0-rtm-21431")
|
||||
.HasAnnotation("Relational:Sequence:shared.OrderSequences", "'OrderSequences', 'shared', '1001', '1', '', '', 'Int32', 'False'")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("City");
|
||||
|
||||
b.Property<string>("Country");
|
||||
|
||||
b.Property<string>("CountryCode");
|
||||
|
||||
b.Property<double>("Latitude");
|
||||
|
||||
b.Property<double>("Longitude");
|
||||
|
||||
b.Property<string>("State");
|
||||
|
||||
b.Property<string>("StateCode");
|
||||
|
||||
b.Property<string>("Street");
|
||||
|
||||
b.Property<string>("ZipCode");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("Address");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<Guid?>("BillingAddressId");
|
||||
|
||||
b.Property<Guid>("BuyerId");
|
||||
|
||||
b.Property<DateTime>("OrderDate");
|
||||
|
||||
b.Property<int>("SequenceNumber")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValueSql("NEXT VALUE FOR shared.OrderSequences");
|
||||
|
||||
b.Property<Guid?>("ShippingAddressId");
|
||||
|
||||
b.Property<int>("Status");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BillingAddressId");
|
||||
|
||||
b.HasIndex("ShippingAddressId");
|
||||
|
||||
b.ToTable("Orders");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<decimal>("Discount");
|
||||
|
||||
b.Property<int>("FulfillmentRemaining");
|
||||
|
||||
b.Property<Guid>("OrderId");
|
||||
|
||||
b.Property<Guid>("ProductId");
|
||||
|
||||
b.Property<int>("Quantity");
|
||||
|
||||
b.Property<decimal>("UnitPrice");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OrderId");
|
||||
|
||||
b.ToTable("OrderItem");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "BillingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("BillingAddressId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "ShippingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("ShippingAddressId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order")
|
||||
.WithMany("OrderItems")
|
||||
.HasForeignKey("OrderId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -1,19 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
public partial class Migration_Baseline : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -1,121 +0,0 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.UnitOfWork;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
[DbContext(typeof(OrderingDbContext))]
|
||||
[Migration("20161005003321_Migration_Cero")]
|
||||
partial class Migration_Cero
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "1.0.0-rtm-21431")
|
||||
.HasAnnotation("Relational:Sequence:shared.OrderSequences", "'OrderSequences', 'shared', '1001', '1', '', '', 'Int32', 'False'")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("City");
|
||||
|
||||
b.Property<string>("Country");
|
||||
|
||||
b.Property<string>("CountryCode");
|
||||
|
||||
b.Property<double>("Latitude");
|
||||
|
||||
b.Property<double>("Longitude");
|
||||
|
||||
b.Property<string>("State");
|
||||
|
||||
b.Property<string>("StateCode");
|
||||
|
||||
b.Property<string>("Street");
|
||||
|
||||
b.Property<string>("ZipCode");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("Address");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<Guid?>("BillingAddressId");
|
||||
|
||||
b.Property<Guid>("BuyerId");
|
||||
|
||||
b.Property<DateTime>("OrderDate");
|
||||
|
||||
b.Property<int>("SequenceNumber")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValueSql("NEXT VALUE FOR shared.OrderSequences");
|
||||
|
||||
b.Property<Guid?>("ShippingAddressId");
|
||||
|
||||
b.Property<int>("Status");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BillingAddressId");
|
||||
|
||||
b.HasIndex("ShippingAddressId");
|
||||
|
||||
b.ToTable("Orders");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<decimal>("Discount");
|
||||
|
||||
b.Property<int>("FulfillmentRemaining");
|
||||
|
||||
b.Property<Guid>("OrderId");
|
||||
|
||||
b.Property<Guid>("ProductId");
|
||||
|
||||
b.Property<int>("Quantity");
|
||||
|
||||
b.Property<decimal>("UnitPrice");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OrderId");
|
||||
|
||||
b.ToTable("OrderItem");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "BillingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("BillingAddressId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "ShippingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("ShippingAddressId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order")
|
||||
.WithMany("OrderItems")
|
||||
.HasForeignKey("OrderId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -1,19 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
public partial class Migration_Cero : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -1,123 +0,0 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.UnitOfWork;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
[DbContext(typeof(OrderingDbContext))]
|
||||
[Migration("20161011040943_Migration2")]
|
||||
partial class Migration2
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "1.0.0-rtm-21431")
|
||||
.HasAnnotation("Relational:Sequence:shared.OrderSequences", "'OrderSequences', 'shared', '1001', '1', '', '', 'Int32', 'False'")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("City");
|
||||
|
||||
b.Property<string>("Country");
|
||||
|
||||
b.Property<string>("CountryCode");
|
||||
|
||||
b.Property<double>("Latitude");
|
||||
|
||||
b.Property<double>("Longitude");
|
||||
|
||||
b.Property<string>("State");
|
||||
|
||||
b.Property<string>("StateCode");
|
||||
|
||||
b.Property<string>("Street");
|
||||
|
||||
b.Property<string>("ZipCode");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("Address");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<Guid?>("BillingAddressId");
|
||||
|
||||
b.Property<Guid>("BuyerId");
|
||||
|
||||
b.Property<DateTime>("OrderDate");
|
||||
|
||||
b.Property<int>("SequenceNumber")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValueSql("NEXT VALUE FOR shared.OrderSequences");
|
||||
|
||||
b.Property<Guid?>("ShippingAddressId");
|
||||
|
||||
b.Property<int>("Status");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BillingAddressId");
|
||||
|
||||
b.HasIndex("ShippingAddressId");
|
||||
|
||||
b.ToTable("Orders");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<decimal>("Discount");
|
||||
|
||||
b.Property<int>("FulfillmentRemaining");
|
||||
|
||||
b.Property<Guid>("OrderId");
|
||||
|
||||
b.Property<Guid>("ProductId");
|
||||
|
||||
b.Property<string>("ProductName");
|
||||
|
||||
b.Property<int>("Quantity");
|
||||
|
||||
b.Property<decimal>("UnitPrice");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OrderId");
|
||||
|
||||
b.ToTable("OrderItem");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "BillingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("BillingAddressId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "ShippingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("ShippingAddressId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order")
|
||||
.WithMany("OrderItems")
|
||||
.HasForeignKey("OrderId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
public partial class Migration2 : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "ProductName",
|
||||
table: "OrderItem",
|
||||
nullable: true);
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ProductName",
|
||||
table: "OrderItem");
|
||||
}
|
||||
}
|
||||
}
|
@ -1,123 +0,0 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.UnitOfWork;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
[DbContext(typeof(OrderingDbContext))]
|
||||
[Migration("20161011041130_Migration3")]
|
||||
partial class Migration3
|
||||
{
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "1.0.0-rtm-21431")
|
||||
.HasAnnotation("Relational:Sequence:shared.OrderSequences", "'OrderSequences', 'shared', '1001', '1', '', '', 'Int32', 'False'")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("City");
|
||||
|
||||
b.Property<string>("Country");
|
||||
|
||||
b.Property<string>("CountryCode");
|
||||
|
||||
b.Property<double>("Latitude");
|
||||
|
||||
b.Property<double>("Longitude");
|
||||
|
||||
b.Property<string>("State");
|
||||
|
||||
b.Property<string>("StateCode");
|
||||
|
||||
b.Property<string>("Street");
|
||||
|
||||
b.Property<string>("ZipCode");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("Address");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<Guid?>("BillingAddressId");
|
||||
|
||||
b.Property<Guid>("BuyerId");
|
||||
|
||||
b.Property<DateTime>("OrderDate");
|
||||
|
||||
b.Property<int>("SequenceNumber")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValueSql("NEXT VALUE FOR shared.OrderSequences");
|
||||
|
||||
b.Property<Guid?>("ShippingAddressId");
|
||||
|
||||
b.Property<int>("Status");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BillingAddressId");
|
||||
|
||||
b.HasIndex("ShippingAddressId");
|
||||
|
||||
b.ToTable("Orders");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<decimal>("Discount");
|
||||
|
||||
b.Property<int>("FulfillmentRemaining");
|
||||
|
||||
b.Property<Guid>("OrderId");
|
||||
|
||||
b.Property<Guid>("ProductId");
|
||||
|
||||
b.Property<string>("ProductName");
|
||||
|
||||
b.Property<int>("Quantity");
|
||||
|
||||
b.Property<decimal>("UnitPrice");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OrderId");
|
||||
|
||||
b.ToTable("OrderItem");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "BillingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("BillingAddressId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "ShippingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("ShippingAddressId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order")
|
||||
.WithMany("OrderItems")
|
||||
.HasForeignKey("OrderId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -1,19 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
public partial class Migration3 : Migration
|
||||
{
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -1,122 +0,0 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.UnitOfWork;
|
||||
|
||||
namespace Ordering.API.Migrations
|
||||
{
|
||||
[DbContext(typeof(OrderingDbContext))]
|
||||
partial class OrderingDbContextModelSnapshot : ModelSnapshot
|
||||
{
|
||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "1.0.0-rtm-21431")
|
||||
.HasAnnotation("Relational:Sequence:shared.OrderSequences", "'OrderSequences', 'shared', '1001', '1', '', '', 'Int32', 'False'")
|
||||
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<string>("City");
|
||||
|
||||
b.Property<string>("Country");
|
||||
|
||||
b.Property<string>("CountryCode");
|
||||
|
||||
b.Property<double>("Latitude");
|
||||
|
||||
b.Property<double>("Longitude");
|
||||
|
||||
b.Property<string>("State");
|
||||
|
||||
b.Property<string>("StateCode");
|
||||
|
||||
b.Property<string>("Street");
|
||||
|
||||
b.Property<string>("ZipCode");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("Address");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<Guid?>("BillingAddressId");
|
||||
|
||||
b.Property<Guid>("BuyerId");
|
||||
|
||||
b.Property<DateTime>("OrderDate");
|
||||
|
||||
b.Property<int>("SequenceNumber")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasDefaultValueSql("NEXT VALUE FOR shared.OrderSequences");
|
||||
|
||||
b.Property<Guid?>("ShippingAddressId");
|
||||
|
||||
b.Property<int>("Status");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("BillingAddressId");
|
||||
|
||||
b.HasIndex("ShippingAddressId");
|
||||
|
||||
b.ToTable("Orders");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.Property<Guid>("Id")
|
||||
.ValueGeneratedOnAdd();
|
||||
|
||||
b.Property<decimal>("Discount");
|
||||
|
||||
b.Property<int>("FulfillmentRemaining");
|
||||
|
||||
b.Property<Guid>("OrderId");
|
||||
|
||||
b.Property<Guid>("ProductId");
|
||||
|
||||
b.Property<string>("ProductName");
|
||||
|
||||
b.Property<int>("Quantity");
|
||||
|
||||
b.Property<decimal>("UnitPrice");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("OrderId");
|
||||
|
||||
b.ToTable("OrderItem");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "BillingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("BillingAddressId");
|
||||
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Address", "ShippingAddress")
|
||||
.WithMany()
|
||||
.HasForeignKey("ShippingAddressId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderItem", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.Order")
|
||||
.WithMany("OrderItems")
|
||||
.HasForeignKey("OrderId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
using System;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API.Models
|
||||
{
|
||||
public class NewOrderViewModel
|
||||
{
|
||||
public string ShippingCity { get; set; }
|
||||
|
||||
public string ShippingStreet { get; set; }
|
||||
|
||||
public string ShippingState { get; set; }
|
||||
|
||||
public string ShippingCountry { get; set; }
|
||||
|
||||
public string CardType { get; set; }
|
||||
|
||||
public string CardNumber { get; set; }
|
||||
|
||||
public string CardHolderName { get; set; }
|
||||
|
||||
public DateTime CardExpiration { get; set; }
|
||||
|
||||
public string CardSecurityNumber { get; set; }
|
||||
}
|
||||
}
|
@ -1,187 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>Welcome to ASP.NET Core</title>
|
||||
<style>
|
||||
html {
|
||||
background: #f1f1f1;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
body {
|
||||
background: #fff;
|
||||
color: #505050;
|
||||
font: 14px 'Segoe UI', tahoma, arial, helvetica, sans-serif;
|
||||
margin: 1%;
|
||||
min-height: 95.5%;
|
||||
border: 1px solid silver;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
#header {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#header h1 {
|
||||
font-size: 44px;
|
||||
font-weight: normal;
|
||||
margin: 0;
|
||||
padding: 10px 30px 10px 30px;
|
||||
}
|
||||
|
||||
#header span {
|
||||
margin: 0;
|
||||
padding: 0 30px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
#header p {
|
||||
font-size: 20px;
|
||||
color: #fff;
|
||||
background: #007acc;
|
||||
padding: 0 30px;
|
||||
line-height: 50px;
|
||||
margin-top: 25px;
|
||||
|
||||
}
|
||||
|
||||
#header p a {
|
||||
color: #fff;
|
||||
text-decoration: underline;
|
||||
font-weight: bold;
|
||||
padding-right: 35px;
|
||||
background: no-repeat right bottom url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAWCAMAAAAcqPc3AAAANlBMVEUAAAAAeswfitI9mthXp91us+KCvuaTx+mjz+2x1u+83PLH4vTR5/ba7Pjj8Pns9fv1+v3////wy3dWAAAAAXRSTlMAQObYZgAAAHxJREFUeNp9kVcSwCAIRMHUYoH7XzaxOxJ9P8oyQ1uIqNPwh3s2aLmIM2YtqrLcQIeQEylhuCeUOlhgve5yoBCfWmlnlgkN4H8ykbpaE7gR03AbUHiwoOxUH9Xp+ubd41p1HF3mBPrfC87BHeTdaB3ceeKL9HGpcvX9zu6+DdMWT9KQPvYAAAAASUVORK5CYII=);
|
||||
}
|
||||
|
||||
#main {
|
||||
padding: 5px 30px;
|
||||
clear: both;
|
||||
}
|
||||
|
||||
.section {
|
||||
width: 21.7%;
|
||||
float: left;
|
||||
margin: 0 0 0 4%;
|
||||
}
|
||||
|
||||
.section h2 {
|
||||
font-size: 13px;
|
||||
text-transform: uppercase;
|
||||
margin: 0;
|
||||
border-bottom: 1px solid silver;
|
||||
padding-bottom: 12px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.section.first {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.section.first h2 {
|
||||
font-size: 24px;
|
||||
text-transform: none;
|
||||
margin-bottom: 25px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.section.first li {
|
||||
border-top: 1px solid silver;
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
||||
.section.last {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
li {
|
||||
padding: 4px 0;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #267cb2;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
#footer {
|
||||
clear: both;
|
||||
padding-top: 50px;
|
||||
}
|
||||
|
||||
#footer p {
|
||||
position: absolute;
|
||||
bottom: 10px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div id="header">
|
||||
<h1>Welcome to ASP.NET Core</h1>
|
||||
<span>
|
||||
We've made some big updates in this release, so it’s <b>important</b> that you spend
|
||||
a few minutes to learn what’s new.
|
||||
</span>
|
||||
<p>You've created a new ASP.NET Core project. <a href="http://go.microsoft.com/fwlink/?LinkId=518016">Learn what's new</a></p>
|
||||
</div>
|
||||
|
||||
<div id="main">
|
||||
<div class="section first">
|
||||
<h2>This application consists of:</h2>
|
||||
<ul>
|
||||
<li>Sample pages using ASP.NET Core MVC</li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=518004">Bower</a> for managing client-side libraries</li>
|
||||
<li>Theming using <a href="http://go.microsoft.com/fwlink/?LinkID=398939">Bootstrap</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section">
|
||||
<h2>How to</h2>
|
||||
<ul>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkID=398600">Add a Controller and View</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkID=699562">Add an appsetting in config and access it in app.</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=699315">Manage User Secrets using Secret Manager.</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=699316">Use logging to log a message.</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=699317">Add packages using NuGet.</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=699318">Add client packages using Bower.</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=699319">Target development, staging or production environment.</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section">
|
||||
<h2>Overview</h2>
|
||||
<ul>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=518008">Conceptual overview of what is ASP.NET Core</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=699320">Fundamentals of ASP.NET Core such as Startup and middleware.</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=398602">Working with Data</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkId=398603">Security</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkID=699321">Client side development</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkID=699322">Develop on different platforms</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkID=699323">Read more on the documentation site</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section last">
|
||||
<h2>Run & Deploy</h2>
|
||||
<ul>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkID=517851">Run your app</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkID=517853">Run tools such as EF migrations and more</a></li>
|
||||
<li><a href="http://go.microsoft.com/fwlink/?LinkID=398609">Publish to Microsoft Azure Web Apps</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div id="footer">
|
||||
<p>We would love to hear your <a href="http://go.microsoft.com/fwlink/?LinkId=518015">feedback</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
@ -11,7 +11,7 @@
|
||||
"IIS Express": {
|
||||
"commandName": "IISExpress",
|
||||
"launchBrowser": true,
|
||||
"launchUrl": "api/environmentInfo/machinename",
|
||||
"launchUrl": "/swagger/ui",
|
||||
"environmentVariables": {
|
||||
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||
}
|
||||
|
@ -1,29 +1,29 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.UnitOfWork;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.Domain.Contracts;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.Repositories;
|
||||
using Microsoft.eShopOnContainers.Services.Ordering.SqlData.Queries;
|
||||
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.API
|
||||
{
|
||||
using Autofac;
|
||||
using Autofac.Extensions.DependencyInjection;
|
||||
using Infrastructure;
|
||||
using Infrastructure.AutofacModules;
|
||||
using Infrastructure.Filters;
|
||||
using MediatR;
|
||||
using Microsoft.AspNetCore.Builder;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Ordering.Infrastructure;
|
||||
using System;
|
||||
using System.Reflection;
|
||||
|
||||
public class Startup
|
||||
{
|
||||
public Startup(IHostingEnvironment env)
|
||||
{
|
||||
var builder = new ConfigurationBuilder()
|
||||
.SetBasePath(env.ContentRootPath)
|
||||
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
|
||||
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true);
|
||||
.AddJsonFile("settings.json", optional: true, reloadOnChange: true)
|
||||
.AddJsonFile($"settings.{env.EnvironmentName}.json", optional: true);
|
||||
|
||||
if (env.IsDevelopment())
|
||||
{
|
||||
@ -37,27 +37,55 @@ namespace Microsoft.eShopOnContainers.Services.Ordering.API
|
||||
|
||||
public IConfigurationRoot Configuration { get; }
|
||||
|
||||
// This method gets called by the runtime.
|
||||
// Use this method to add services to the IoC container.
|
||||
public void ConfigureServices(IServiceCollection services)
|
||||
public IServiceProvider ConfigureServices(IServiceCollection services)
|
||||
{
|
||||
// Add framework services.
|
||||
services.AddMvc();
|
||||
|
||||
|
||||
var connString = Configuration["ConnectionString"];
|
||||
|
||||
services.AddDbContext<OrderingDbContext>(options =>
|
||||
services.AddMvc(options=>
|
||||
{
|
||||
options.UseSqlServer(connString)
|
||||
.UseSqlServer(connString, b => b.MigrationsAssembly("Ordering.API"));
|
||||
|
||||
options.Filters.Add(typeof(HttpGlobalExceptionFilter));
|
||||
|
||||
}).AddControllersAsServices();
|
||||
|
||||
services.AddEntityFrameworkSqlServer()
|
||||
.AddDbContext<OrderingContext>(options =>
|
||||
{
|
||||
options.UseSqlServer(Configuration["ConnectionString"],
|
||||
sqlop=>sqlop.MigrationsAssembly(typeof(Startup).GetTypeInfo().Assembly.GetName().Name));
|
||||
});
|
||||
|
||||
services.AddSwaggerGen();
|
||||
services.ConfigureSwaggerGen(options =>
|
||||
{
|
||||
options.DescribeAllEnumsAsStrings();
|
||||
options.SingleApiVersion(new Swashbuckle.Swagger.Model.Info()
|
||||
{
|
||||
Title = "Ordering HTTP API",
|
||||
Version = "v1",
|
||||
Description = "The Ordering Service HTTP API",
|
||||
TermsOfService = "Terms Of Service"
|
||||
});
|
||||
});
|
||||
|
||||
services.AddTransient<IOrderRepository, OrderRepository>();
|
||||
services.AddTransient<IOrderdingQueries, OrderingQueries>();
|
||||
services.AddSingleton<IConfiguration>(this.Configuration);
|
||||
|
||||
services.AddOptions();
|
||||
|
||||
|
||||
|
||||
//configure autofac
|
||||
|
||||
var container = new ContainerBuilder();
|
||||
container.Populate(services);
|
||||
|
||||
container.RegisterModule(new MediatorModule());
|
||||
container.RegisterModule(new ApplicationModule());
|
||||
|
||||
|
||||
return new AutofacServiceProvider(container.Build());
|
||||
}
|
||||
|
||||
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
|
||||
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
|
||||
{
|
||||
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
|
||||
@ -67,8 +95,13 @@ namespace Microsoft.eShopOnContainers.Services.Ordering.API
|
||||
{
|
||||
app.UseDeveloperExceptionPage();
|
||||
}
|
||||
|
||||
|
||||
OrderingContextSeed.SeedAsync(app).Wait();
|
||||
|
||||
app.UseMvc();
|
||||
|
||||
app.UseSwagger()
|
||||
.UseSwaggerUi();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -10,16 +10,13 @@ services:
|
||||
- ConnectionString=Server=ordering.data;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word
|
||||
ports:
|
||||
- "81:80"
|
||||
# (Go to Production): For secured/final deployment, remove Ports mapping and
|
||||
# leave just the internal expose section
|
||||
# expose:
|
||||
# - "80"
|
||||
extra_hosts:
|
||||
- "CESARDLBOOKVHD:10.0.75.1"
|
||||
depends_on:
|
||||
- ordering.data
|
||||
|
||||
ordering.data:
|
||||
image: eshop/ordering.data.sqlserver.linux
|
||||
image: microsoft/mssql-server-linux
|
||||
environment:
|
||||
- ACCEPT_EULA=Y
|
||||
- SA_PASSWORD=Pass@word
|
||||
ports:
|
||||
- "1433:1433"
|
@ -1,9 +1,11 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.1",
|
||||
"type": "platform"
|
||||
},
|
||||
"MediatR.Extensions.Microsoft.DependencyInjection": "1.0.1",
|
||||
"Autofac.Extensions.DependencyInjection": "4.0.0",
|
||||
"Microsoft.AspNetCore.Mvc": "1.0.0",
|
||||
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
|
||||
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
|
||||
@ -11,17 +13,21 @@
|
||||
"Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
|
||||
"Microsoft.Extensions.Configuration.UserSecrets": "1.0.0",
|
||||
"Microsoft.Extensions.Configuration.Json": "1.0.0",
|
||||
"Microsoft.Extensions.Logging": "1.0.0",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "1.0.0",
|
||||
"Microsoft.Extensions.Logging.Console": "1.0.0",
|
||||
"Microsoft.Extensions.Logging.Debug": "1.0.0",
|
||||
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
|
||||
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.0",
|
||||
"Microsoft.EntityFrameworkCore": "1.0.0",
|
||||
"Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.0",
|
||||
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
|
||||
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.1",
|
||||
"Microsoft.EntityFrameworkCore": "1.0.1",
|
||||
"Microsoft.EntityFrameworkCore.Design" : "1.0.0-preview2-final",
|
||||
"Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.1",
|
||||
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
|
||||
"Swashbuckle": "6.0.0-beta902",
|
||||
"MediatR": "2.1.0",
|
||||
"Ordering.Domain": "1.0.0-*",
|
||||
"Ordering.SqlData": "1.0.0-*"
|
||||
"Ordering.Application": "1.0.0-*",
|
||||
"Ordering.Infrastructure": "1.0.0-*",
|
||||
"System.Reflection": "4.3.0"
|
||||
},
|
||||
"tools": {
|
||||
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
|
||||
@ -63,5 +69,6 @@
|
||||
"postpublish": [
|
||||
"dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%"
|
||||
]
|
||||
}
|
||||
},
|
||||
"userSecretsId": "aspnet-Ordering.API-20161122013547"
|
||||
}
|
@ -1,3 +1,3 @@
|
||||
{
|
||||
"ConnectionString": "Server=127.0.0.1;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word;"
|
||||
"ConnectionString": "Server=tcp:127.0.0.1,5433;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word;"
|
||||
}
|
||||
|
@ -0,0 +1,110 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.Application.Commands
|
||||
{
|
||||
using Domain.Repositories;
|
||||
using MediatR;
|
||||
using System.Linq;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using Domain;
|
||||
|
||||
public class NewOrderRequestHandler
|
||||
: IAsyncRequestHandler<NewOrderRequest, bool>
|
||||
{
|
||||
private readonly IBuyerRepository _buyerRepository;
|
||||
private readonly IOrderRepository _orderRepository;
|
||||
|
||||
public NewOrderRequestHandler(IBuyerRepository buyerRepository,IOrderRepository orderRepository)
|
||||
{
|
||||
if (buyerRepository == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(buyerRepository));
|
||||
}
|
||||
|
||||
if (orderRepository == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(orderRepository));
|
||||
}
|
||||
|
||||
_buyerRepository = buyerRepository;
|
||||
_orderRepository = orderRepository;
|
||||
}
|
||||
public async Task<bool> Handle(NewOrderRequest message)
|
||||
{
|
||||
//find buyer/payment or add a new one
|
||||
|
||||
var buyer = await _buyerRepository.FindAsync(message.Buyer);
|
||||
|
||||
if (buyer == null)
|
||||
{
|
||||
buyer = CreateBuyer(message);
|
||||
}
|
||||
|
||||
var payment = GetExistingPaymentOrAddANewOne(buyer, message);
|
||||
|
||||
await _buyerRepository.UnitOfWork.SaveChangesAsync();
|
||||
|
||||
//create order
|
||||
var order = CreateOrder(buyer.Id, payment.Id, 0);
|
||||
order.SetAddress( new Address()
|
||||
{
|
||||
City = message.City,
|
||||
State = message.State,
|
||||
Street = message.Street,
|
||||
ZipCode = message.ZipCode
|
||||
});
|
||||
|
||||
_orderRepository.Add(order);
|
||||
|
||||
var result = await _orderRepository.UnitOfWork.SaveChangesAsync();
|
||||
|
||||
return result > 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Payment GetExistingPaymentOrAddANewOne(Buyer buyer, NewOrderRequest message)
|
||||
{
|
||||
Payment payment = PaymentAlreadyExist(buyer, message);
|
||||
|
||||
if (payment == null)
|
||||
{
|
||||
payment = CreatePayment(message);
|
||||
buyer.Payments.Add(payment);
|
||||
}
|
||||
|
||||
return payment;
|
||||
|
||||
}
|
||||
|
||||
Payment PaymentAlreadyExist(Domain.Buyer buyer, NewOrderRequest message)
|
||||
{
|
||||
return buyer.Payments
|
||||
.SingleOrDefault(p =>
|
||||
{
|
||||
return p.CardHolderName == message.CardHolderName
|
||||
&&
|
||||
p.CardNumber == message.CardNumber
|
||||
&&
|
||||
p.Expiration == message.CardExpiration
|
||||
&&
|
||||
p.SecurityNumber == message.CardSecurityNumber;
|
||||
});
|
||||
}
|
||||
|
||||
Buyer CreateBuyer(NewOrderRequest message)
|
||||
{
|
||||
return _buyerRepository.Add(
|
||||
new Buyer(message.Buyer));
|
||||
}
|
||||
|
||||
Order CreateOrder(int buyerId, int paymentId, int addressId)
|
||||
{
|
||||
return new Order(buyerId, paymentId);
|
||||
}
|
||||
|
||||
Payment CreatePayment(NewOrderRequest message)
|
||||
{
|
||||
return new Payment(message.CardNumber, message.CardSecurityNumber, message.CardHolderName, message.CardExpiration, message.CardTypeId);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.Application.Commands
|
||||
{
|
||||
using System;
|
||||
using MediatR;
|
||||
|
||||
public class NewOrderRequest
|
||||
:IAsyncRequest<bool>
|
||||
{
|
||||
public string City { get; set; }
|
||||
|
||||
public string Street { get; set; }
|
||||
|
||||
public string State { get; set; }
|
||||
|
||||
public string Country { get; set; }
|
||||
|
||||
public string ZipCode { get; set; }
|
||||
|
||||
public string CardNumber { get; set; }
|
||||
|
||||
public string CardHolderName { get; set; }
|
||||
|
||||
public DateTime CardExpiration { get; set; }
|
||||
|
||||
public string CardSecurityNumber { get; set; }
|
||||
|
||||
public int CardTypeId { get; set; }
|
||||
|
||||
public string Buyer { get; set; }
|
||||
|
||||
public NewOrderRequest()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.Application.Decorators
|
||||
{
|
||||
using Extensions.Logging;
|
||||
using MediatR;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class LogDecorator<TRequest, TResponse>
|
||||
: IAsyncRequestHandler<TRequest, TResponse>
|
||||
where TRequest : IAsyncRequest<TResponse>
|
||||
{
|
||||
private readonly IAsyncRequestHandler<TRequest, TResponse> _inner;
|
||||
private readonly ILogger<LogDecorator<TRequest, TResponse>> _logger;
|
||||
|
||||
|
||||
public LogDecorator(
|
||||
IAsyncRequestHandler<TRequest, TResponse> inner,
|
||||
ILogger<LogDecorator<TRequest, TResponse>> logger)
|
||||
{
|
||||
_inner = inner;
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
public async Task<TResponse> Handle(TRequest message)
|
||||
{
|
||||
_logger.LogInformation($"Executing command {_inner.GetType().FullName}");
|
||||
|
||||
var response = await _inner.Handle(message);
|
||||
|
||||
_logger.LogInformation($"Succedded executed command {_inner.GetType().FullName}");
|
||||
|
||||
return response;
|
||||
}
|
||||
}
|
||||
}
|
@ -6,11 +6,11 @@
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VSToolsPath)\DotNet\Microsoft.DotNet.Props" Condition="'$(VSToolsPath)' != ''" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>5da6ef13-c7e0-4ec4-8599-a61c6ac2628d</ProjectGuid>
|
||||
<RootNamespace>Microsoft.eShopOnContainers.Services.Ordering.SqlData</RootNamespace>
|
||||
<ProjectGuid>4193caa3-a1c3-4818-a06f-a2d85fde77e7</ProjectGuid>
|
||||
<RootNamespace>Microsoft.eShopOnContainers.Services.Ordering.Application</RootNamespace>
|
||||
<BaseIntermediateOutputPath Condition="'$(BaseIntermediateOutputPath)'=='' ">.\obj</BaseIntermediateOutputPath>
|
||||
<OutputPath Condition="'$(OutputPath)'=='' ">.\bin\</OutputPath>
|
||||
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.5.1</TargetFrameworkVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
@ -7,7 +7,7 @@ using System.Runtime.InteropServices;
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("Microsoft.eShopOnContainers.Services.Ordering.Infrastructure")]
|
||||
[assembly: AssemblyProduct("Ordering.Application")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
@ -16,4 +16,4 @@ using System.Runtime.InteropServices;
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("5da6ef13-c7e0-4ec4-8599-a61c6ac2628d")]
|
||||
[assembly: Guid("4193caa3-a1c3-4818-a06f-a2d85fde77e7")]
|
@ -0,0 +1,13 @@
|
||||
namespace Microsoft.eShopOnContainers.Services.Ordering.Application.Queries
|
||||
{
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public interface IOrderQueries
|
||||
{
|
||||
Task<dynamic> GetOrder(int id);
|
||||
|
||||
Task<dynamic> GetOrders();
|
||||
|
||||
Task<dynamic> GetCardTypes();
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user