From 9d7c588fc55bdc16a017a89d3c1afc70014df1ff Mon Sep 17 00:00:00 2001
From: Charles Lowell <chlowe@microsoft.com>
Date: Mon, 13 Feb 2017 12:17:59 -0800
Subject: [PATCH 1/5] Restore Ordering.API dependencies before build

---
 build-image-service-orders.ps1 | 16 +++++++++-------
 build-image-web-spa.ps1        | 16 +++++++++-------
 build-image-web.ps1            | 16 +++++++++-------
 build-images.ps1               | 19 ++++++++++---------
 4 files changed, 37 insertions(+), 30 deletions(-)

diff --git a/build-image-service-orders.ps1 b/build-image-service-orders.ps1
index 6212bd60e..3e2137f8f 100644
--- a/build-image-service-orders.ps1
+++ b/build-image-service-orders.ps1
@@ -3,14 +3,16 @@
 Write-Host "Current script directory is $scriptPath" -ForegroundColor Yellow
 
 #*** Ordering service image ***
-$orderingPathToJson = $scriptPath + "\src\Services\Ordering\Ordering.API\project.json"
-Write-Host "orderingPathToJson is $orderingPathToJson" -ForegroundColor Yellow
-$orderingPathToPub = $scriptPath + "\pub\ordering"
-Write-Host "orderingPathToPub is $orderingPathToPub" -ForegroundColor Yellow
+$orderingPath = $scriptPath + "\src\Services\Ordering"
+Write-Host "orderingPath is $orderingPath" -ForegroundColor Yellow
+$orderingApiPathToJson = $orderingPath + "\Ordering.API\project.json"
+Write-Host "orderingApiPathToJson is $orderingApiPathToJson" -ForegroundColor Yellow
+$orderingApiPathToPub = $scriptPath + "\pub\ordering"
+Write-Host "orderingApiPathToPub is $orderingApiPathToPub" -ForegroundColor Yellow
 
 Write-Host "Restore Dependencies just in case as it is needed to run dotnet publish" -ForegroundColor Blue
-dotnet restore $orderingPathToJson
-dotnet build $orderingPathToJson
-dotnet publish $orderingPathToJson -o $orderingPathToPub
+dotnet restore $orderingPath
+dotnet build $orderingApiPathToJson
+dotnet publish $orderingApiPathToJson -o $orderingApiPathToPub
 
 docker build -t eshop/ordering.api $orderingPathToPub
\ No newline at end of file
diff --git a/build-image-web-spa.ps1 b/build-image-web-spa.ps1
index e28757366..548a5aaed 100644
--- a/build-image-web-spa.ps1
+++ b/build-image-web-spa.ps1
@@ -42,15 +42,17 @@ dotnet build $catalogPathToJson
 dotnet publish $catalogPathToJson -o $catalogPathToPub
 
 #*** Ordering service image ***
-$orderingPathToJson = $scriptPath + "\src\Services\Ordering\Ordering.API\project.json"
-Write-Host "orderingPathToJson is $orderingPathToJson" -ForegroundColor Yellow
-$orderingPathToPub = $scriptPath + "\pub\ordering"
-Write-Host "orderingPathToPub is $orderingPathToPub" -ForegroundColor Yellow
+$orderingPath = $scriptPath + "\src\Services\Ordering"
+Write-Host "orderingPath is $orderingPath" -ForegroundColor Yellow
+$orderingApiPathToJson = $orderingPath + "\Ordering.API\project.json"
+Write-Host "orderingApiPathToJson is $orderingApiPathToJson" -ForegroundColor Yellow
+$orderingApiPathToPub = $scriptPath + "\pub\ordering"
+Write-Host "orderingApiPathToPub is $orderingApiPathToPub" -ForegroundColor Yellow
 
 Write-Host "Restore Dependencies just in case as it is needed to run dotnet publish" -ForegroundColor Blue
-dotnet restore $orderingPathToJson
-dotnet build $orderingPathToJson
-dotnet publish $orderingPathToJson -o $orderingPathToPub
+dotnet restore $orderingPath
+dotnet build $orderingApiPathToJson
+dotnet publish $orderingApiPathToJson -o $orderingApiPathToPub
 
 #*** Basket service image ***
 $basketPathToJson = $scriptPath + "\src\Services\Basket\Basket.API\project.json"
diff --git a/build-image-web.ps1 b/build-image-web.ps1
index 1a2b06fdb..ef3a94b12 100644
--- a/build-image-web.ps1
+++ b/build-image-web.ps1
@@ -40,15 +40,17 @@ dotnet build $catalogPathToJson
 dotnet publish $catalogPathToJson -o $catalogPathToPub
 
 #*** Ordering service image ***
-$orderingPathToJson = $scriptPath + "\src\Services\Ordering\Ordering.API\project.json"
-Write-Host "orderingPathToJson is $orderingPathToJson" -ForegroundColor Yellow
-$orderingPathToPub = $scriptPath + "\pub\ordering"
-Write-Host "orderingPathToPub is $orderingPathToPub" -ForegroundColor Yellow
+$orderingPath = $scriptPath + "\src\Services\Ordering"
+Write-Host "orderingPath is $orderingPath" -ForegroundColor Yellow
+$orderingApiPathToJson = $orderingPath + "\Ordering.API\project.json"
+Write-Host "orderingApiPathToJson is $orderingApiPathToJson" -ForegroundColor Yellow
+$orderingApiPathToPub = $scriptPath + "\pub\ordering"
+Write-Host "orderingApiPathToPub is $orderingApiPathToPub" -ForegroundColor Yellow
 
 Write-Host "Restore Dependencies just in case as it is needed to run dotnet publish" -ForegroundColor Blue
-dotnet restore $orderingPathToJson
-dotnet build $orderingPathToJson
-dotnet publish $orderingPathToJson -o $orderingPathToPub
+dotnet restore $orderingPath
+dotnet build $orderingApiPathToJson
+dotnet publish $orderingApiPathToJson -o $orderingApiPathToPub
 
 #*** Basket service image ***
 $basketPathToJson = $scriptPath + "\src\Services\Basket\Basket.API\project.json"
diff --git a/build-images.ps1 b/build-images.ps1
index d498bb89d..54d928bf2 100644
--- a/build-images.ps1
+++ b/build-images.ps1
@@ -40,7 +40,6 @@ dotnet restore $identitySvcPathToJson
 dotnet build $identitySvcPathToJson
 dotnet publish $identitySvcPathToJson -o $identitySvcPathToPub
 
-
 #*** Catalog service image ***
 $catalogPathToJson = $scriptPath + "\src\Services\Catalog\Catalog.API\project.json"
 Write-Host "catalogPathToJson is $catalogPathToJson" -ForegroundColor Yellow
@@ -53,15 +52,17 @@ dotnet build $catalogPathToJson
 dotnet publish $catalogPathToJson -o $catalogPathToPub
 
 #*** Ordering service image ***
-$orderingPathToJson = $scriptPath + "\src\Services\Ordering\Ordering.API\project.json"
-Write-Host "orderingPathToJson is $orderingPathToJson" -ForegroundColor Yellow
-$orderingPathToPub = $scriptPath + "\pub\ordering"
-Write-Host "orderingPathToPub is $orderingPathToPub" -ForegroundColor Yellow
+$orderingPath = $scriptPath + "\src\Services\Ordering"
+Write-Host "orderingPath is $orderingPath" -ForegroundColor Yellow
+$orderingApiPathToJson = $orderingPath + "\Ordering.API\project.json"
+Write-Host "orderingApiPathToJson is $orderingApiPathToJson" -ForegroundColor Yellow
+$orderingApiPathToPub = $scriptPath + "\pub\ordering"
+Write-Host "orderingApiPathToPub is $orderingApiPathToPub" -ForegroundColor Yellow
 
 Write-Host "Restore Dependencies just in case as it is needed to run dotnet publish" -ForegroundColor Blue
-dotnet restore $orderingPathToJson
-dotnet build $orderingPathToJson
-dotnet publish $orderingPathToJson -o $orderingPathToPub
+dotnet restore $orderingPath
+dotnet build $orderingApiPathToJson
+dotnet publish $orderingApiPathToJson -o $orderingApiPathToPub
 
 #*** Basket service image ***
 $basketPathToJson = $scriptPath + "\src\Services\Basket\Basket.API\project.json"
@@ -83,7 +84,7 @@ docker rmi $(docker images -q)
 #*** build docker images ***
 docker build -t eshop/web $webPathToPub
 docker build -t eshop/catalog.api $catalogPathToPub
-docker build -t eshop/ordering.api $orderingPathToPub
+docker build -t eshop/ordering.api $orderingApiPathToPub
 docker build -t eshop/basket.api $basketPathToPub
 docker build -t eshop/webspa $webSPAPathToPub
 docker build -t eshop/identity $identitySvcPathToPub
\ No newline at end of file

From 0cd8ccf54bc8e64609b26fe58ee9d52aebd021ac Mon Sep 17 00:00:00 2001
From: Charles Lowell <chlowe@microsoft.com>
Date: Mon, 13 Feb 2017 12:55:34 -0800
Subject: [PATCH 2/5] Install WebSPA's npm dependencies before building

---
 build-image-web-spa.ps1 | 8 +++++---
 build-images.ps1        | 8 +++++---
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/build-image-web-spa.ps1 b/build-image-web-spa.ps1
index 548a5aaed..deee445d1 100644
--- a/build-image-web-spa.ps1
+++ b/build-image-web-spa.ps1
@@ -6,16 +6,18 @@ $pubFolderToDelete = $scriptPath + "\pub"
 remove-item -path $pubFolderToDelete -Force -Recurse -ErrorAction SilentlyContinue
 
 # *** WebSPA image ***
-$webSPAPathToJson = $scriptPath + "\src\Web\WebSPA\eShopOnContainers.WebSPA\project.json"
+$webSPAPath = $scriptPath + "\src\Web\WebSPA\eShopOnContainers.WebSPA"
+$webSPAPathToJson = $webSPAPath + "\project.json"
 Write-Host "webSPAPathToJson is $webSPAPathToJson" -ForegroundColor Yellow
 $webSPAPathToPub = $scriptPath + "\pub\webSPA"
-$webSPAPathToNpmBat = $scriptPath + "\src\Web\WebSPA\eShopOnContainers.WebSPA\buildspa.bat"
 Write-Host "webSPAPathToPub is $webSPAPathToPub" -ForegroundColor Yellow
 
+Write-Host "Installing npm dependencies"
+Start-Process -WorkingDirectory $webSPAPath -NoNewWindow -Wait npm i
+
 Write-Host "Restore Dependencies just in case as it is needed to run dotnet publish" -ForegroundColor Blue
 dotnet restore $webSPAPathToJson
 dotnet build $webSPAPathToJson
-# Start-Process "cmd.exe" "/c " + $webSPAPathToNpmBat
 dotnet publish $webSPAPathToJson -o $webSPAPathToPub
 
 # *** identitySvc image ***
diff --git a/build-images.ps1 b/build-images.ps1
index 54d928bf2..c10df08ed 100644
--- a/build-images.ps1
+++ b/build-images.ps1
@@ -17,16 +17,18 @@ dotnet build $webPathToJson
 dotnet publish $webPathToJson -o $webPathToPub
 
 # *** WebSPA image ***
-$webSPAPathToJson = $scriptPath + "\src\Web\WebSPA\eShopOnContainers.WebSPA\project.json"
+$webSPAPath = $scriptPath + "\src\Web\WebSPA\eShopOnContainers.WebSPA"
+$webSPAPathToJson = $webSPAPath + "\project.json"
 Write-Host "webSPAPathToJson is $webSPAPathToJson" -ForegroundColor Yellow
 $webSPAPathToPub = $scriptPath + "\pub\webSPA"
-$webSPAPathToNpmBat = $scriptPath + "\src\Web\WebSPA\eShopOnContainers.WebSPA\buildspa.bat"
 Write-Host "webSPAPathToPub is $webSPAPathToPub" -ForegroundColor Yellow
 
+Write-Host "Installing npm dependencies"
+Start-Process -WorkingDirectory $webSPAPath -NoNewWindow -Wait npm i
+
 Write-Host "Restore Dependencies just in case as it is needed to run dotnet publish" -ForegroundColor Blue
 dotnet restore $webSPAPathToJson
 dotnet build $webSPAPathToJson
-# Start-Process "cmd.exe" "/c " + $webSPAPathToNpmBat
 dotnet publish $webSPAPathToJson -o $webSPAPathToPub
 
 # *** identitySvc image ***

From 8cfa4e7c568dcf7207f28222dada80aac0fb4673 Mon Sep 17 00:00:00 2001
From: Charles Lowell <chlowe@microsoft.com>
Date: Mon, 13 Feb 2017 12:58:01 -0800
Subject: [PATCH 3/5] Correct Identity.API path

---
 build-image-web-spa.ps1 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/build-image-web-spa.ps1 b/build-image-web-spa.ps1
index deee445d1..c1361d966 100644
--- a/build-image-web-spa.ps1
+++ b/build-image-web-spa.ps1
@@ -21,7 +21,7 @@ dotnet build $webSPAPathToJson
 dotnet publish $webSPAPathToJson -o $webSPAPathToPub
 
 # *** identitySvc image ***
-$identitySvcPathToJson = $scriptPath + "\src\Services\Identity\eShopOnContainers.Identity\project.json"
+$identitySvcPathToJson = $scriptPath + "\src\Services\Identity\Identity.API\project.json"
 Write-Host "identitySvcPathToJson is $identitySvcPathToJson" -ForegroundColor Yellow
 $identitySvcPathToPub = $scriptPath + "\pub\identity"
 Write-Host "identitySvcPathToPub is $identitySvcPathToPub" -ForegroundColor Yellow

From 5e544c0cabfce125ba63afd624a6b056e022d601 Mon Sep 17 00:00:00 2001
From: Charles Lowell <chlowe@microsoft.com>
Date: Mon, 13 Feb 2017 13:34:25 -0800
Subject: [PATCH 4/5] Delete only eshop containers and images

---
 build-image-web-spa.ps1 | 9 ++++-----
 build-image-web.ps1     | 9 ++++-----
 build-images.ps1        | 9 ++++-----
 3 files changed, 12 insertions(+), 15 deletions(-)

diff --git a/build-image-web-spa.ps1 b/build-image-web-spa.ps1
index c1361d966..ccecc0d36 100644
--- a/build-image-web-spa.ps1
+++ b/build-image-web-spa.ps1
@@ -67,11 +67,10 @@ dotnet restore $basketPathToJson
 dotnet build $basketPathToJson
 dotnet publish $basketPathToJson -o $basketPathToPub
 
-#!/bin/bash
-# Delete all containers
-docker rm $(docker ps -a -q) -f
-# Delete all images
-docker rmi $(docker images -q)
+# Delete all eshop containers
+docker rm $(docker images --filter=reference="eshop/*" -q) -f
+# Delete all eshop images
+docker rmi $(docker images --filter=reference="eshop/*" -q)
 
 #*** build docker images ***
 docker build -t eshop/catalog.api $catalogPathToPub
diff --git a/build-image-web.ps1 b/build-image-web.ps1
index ef3a94b12..e64711523 100644
--- a/build-image-web.ps1
+++ b/build-image-web.ps1
@@ -63,11 +63,10 @@ dotnet restore $basketPathToJson
 dotnet build $basketPathToJson
 dotnet publish $basketPathToJson -o $basketPathToPub
 
-#!/bin/bash
-# Delete all containers
-docker rm $(docker ps -a -q) -f
-# Delete all images
-docker rmi $(docker images -q)
+# Delete all eshop containers
+docker rm $(docker images --filter=reference="eshop/*" -q) -f
+# Delete all eshop images
+docker rmi $(docker images --filter=reference="eshop/*" -q)
 
 #*** build docker images ***
 docker build -t eshop/web $webPathToPub
diff --git a/build-images.ps1 b/build-images.ps1
index c10df08ed..c86453d3b 100644
--- a/build-images.ps1
+++ b/build-images.ps1
@@ -77,11 +77,10 @@ dotnet restore $basketPathToJson
 dotnet build $basketPathToJson
 dotnet publish $basketPathToJson -o $basketPathToPub
 
-#!/bin/bash
-# Delete all containers
-docker rm $(docker ps -a -q) -f
-# Delete all images
-docker rmi $(docker images -q)
+# Delete all eshop containers
+docker rm $(docker images --filter=reference="eshop/*" -q) -f
+# Delete all eshop images
+docker rmi $(docker images --filter=reference="eshop/*" -q)
 
 #*** build docker images ***
 docker build -t eshop/web $webPathToPub

From 33672d0e7c71dfa7eb2a148a91b760c6b25d6f08 Mon Sep 17 00:00:00 2001
From: Charles Lowell <chlowe@microsoft.com>
Date: Tue, 14 Feb 2017 13:09:10 -0800
Subject: [PATCH 5/5] Update eShopOnContainers.sln

---
 eShopOnContainers.sln | 72 +++++++++++++++++++++++++++++++++++--------
 1 file changed, 60 insertions(+), 12 deletions(-)

diff --git a/eShopOnContainers.sln b/eShopOnContainers.sln
index cda4a14d8..63d62bb9c 100644
--- a/eShopOnContainers.sln
+++ b/eShopOnContainers.sln
@@ -1,7 +1,7 @@
 
 Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 14
-VisualStudioVersion = 14.0.25420.1
+# Visual Studio 15
+VisualStudioVersion = 15.0.26213.1
 MinimumVisualStudioVersion = 10.0.40219.1
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{932D8224-11F6-4D07-B109-DA28AD288A63}"
 EndProject
@@ -25,19 +25,19 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Basket", "Basket", "{BF3EF4
 EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ordering", "Ordering", "{0BD0DB92-2D98-44D9-9AC0-C59186D59B0B}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Basket.API", "src\Services\Basket\Basket.API\Basket.API.xproj", "{2110CBB0-3B38-4EE4-A743-DF6968D80D90}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Basket.API", "src\Services\Basket\Basket.API\Basket.API.csproj", "{2110CBB0-3B38-4EE4-A743-DF6968D80D90}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Catalog.API", "src\Services\Catalog\Catalog.API\Catalog.API.xproj", "{42681D9D-750A-4DF7-BD9F-9292CFD5C253}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Catalog.API", "src\Services\Catalog\Catalog.API\Catalog.API.csproj", "{42681D9D-750A-4DF7-BD9F-9292CFD5C253}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.API", "src\Services\Ordering\Ordering.API\Ordering.API.xproj", "{231226CE-690B-4979-8870-9A79D80928E2}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.API", "src\Services\Ordering\Ordering.API\Ordering.API.csproj", "{231226CE-690B-4979-8870-9A79D80928E2}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.Domain", "src\Services\Ordering\Ordering.Domain\Ordering.Domain.xproj", "{F5598DCB-6DDE-4661-AD9D-A55612DA7E76}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.Domain", "src\Services\Ordering\Ordering.Domain\Ordering.Domain.csproj", "{F5598DCB-6DDE-4661-AD9D-A55612DA7E76}"
 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}") = "eShopOnContainers.WebMVC", "src\Web\WebMVC\eShopOnContainers.WebMVC.xproj", "{F0333D8E-0B27-42B7-B2C6-78F3657624E2}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebMVC", "src\Web\WebMVC\WebMVC.csproj", "{F0333D8E-0B27-42B7-B2C6-78F3657624E2}"
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.Droid", "src\Mobile\eShopOnContainers\eShopOnContainers.Droid\eShopOnContainers.Droid.csproj", "{62DBB163-9CA9-4818-B48B-13233DF37C24}"
 EndProject
@@ -49,7 +49,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared Code", "Shared Code"
 EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Targets", "Targets", "{9CC7814B-72A6-465B-A61C-57B512DEE303}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "eShopOnContainers.WebSPA", "src\Web\WebSPA\eShopOnContainers.WebSPA\eShopOnContainers.WebSPA.xproj", "{9842DB3A-1391-48C7-A49C-2FABD0A18AC2}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "eShopOnContainers.WebSPA", "src\Web\WebSPA\eShopOnContainers.WebSPA\eShopOnContainers.WebSPA.csproj", "{9842DB3A-1391-48C7-A49C-2FABD0A18AC2}"
 EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Mobile Apps", "Mobile Apps", "{B7B1D395-4E06-4036-BE86-C216756B9367}"
 EndProject
@@ -61,19 +61,19 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunne
 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}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Ordering.Infrastructure", "src\Services\Ordering\Ordering.Infrastructure\Ordering.Infrastructure.xproj", "{95F1F07C-4D92-4742-BD07-E5B805AAB651}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ordering.Infrastructure", "src\Services\Ordering\Ordering.Infrastructure\Ordering.Infrastructure.csproj", "{95F1F07C-4D92-4742-BD07-E5B805AAB651}"
 EndProject
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Identity", "Identity", "{02DF7FEE-C302-433D-A6CD-237A2569F236}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "FunctionalTests", "test\Services\FunctionalTests\FunctionalTests.xproj", "{621E7211-58D0-45FD-9600-1CB490BD930E}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FunctionalTests", "test\Services\FunctionalTests\FunctionalTests.csproj", "{621E7211-58D0-45FD-9600-1CB490BD930E}"
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.UITests", "src\Mobile\eShopOnContainers\eShopOnContainers.UITests\eShopOnContainers.UITests.csproj", "{E3B18084-842C-4B80-8E4A-A7E588EC3137}"
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.Core", "src\Mobile\eShopOnContainers\eShopOnContainers.Core\eShopOnContainers.Core.csproj", "{67F9D3A8-F71E-4428-913F-C37AE82CDB24}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "UnitTest", "test\Services\UnitTest\UnitTest.xproj", "{7796F5D8-31FC-45A4-B673-19DE5BA194CF}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnitTest", "test\Services\UnitTest\UnitTest.csproj", "{7796F5D8-31FC-45A4-B673-19DE5BA194CF}"
 EndProject
-Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Identity.API", "src\Services\Identity\Identity.API\Identity.API.xproj", "{A579E108-5445-403D-A407-339AC4D1611B}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Identity.API", "src\Services\Identity\Identity.API\Identity.API.csproj", "{A579E108-5445-403D-A407-339AC4D1611B}"
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -956,6 +956,54 @@ Global
 		{A579E108-5445-403D-A407-339AC4D1611B}.Release|x64.Build.0 = Release|Any CPU
 		{A579E108-5445-403D-A407-339AC4D1611B}.Release|x86.ActiveCfg = Release|Any CPU
 		{A579E108-5445-403D-A407-339AC4D1611B}.Release|x86.Build.0 = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|x64.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Ad-Hoc|x86.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|Any CPU.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|ARM.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|ARM.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|iPhone.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|iPhone.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|x64.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|x64.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|x86.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.AppStore|x86.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|ARM.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|ARM.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|iPhone.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|x64.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Debug|x86.Build.0 = Debug|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|Any CPU.Build.0 = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|ARM.ActiveCfg = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|ARM.Build.0 = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|iPhone.ActiveCfg = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|iPhone.Build.0 = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|x64.ActiveCfg = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|x64.Build.0 = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|x86.ActiveCfg = Release|Any CPU
+		{FEA0C318-FFED-4D39-8781-265718CA43DD}.Release|x86.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE