Konvert to KoreBuild

This commit is contained in:
Ryan Nowak 2018-03-09 15:35:21 -08:00 committed by Steve Sanderson
parent 49c0596405
commit d175b4d38a
38 changed files with 946 additions and 234 deletions

View File

@ -15,13 +15,13 @@ test: 'off'
deploy: 'off'
os: Visual Studio 2017 Preview
build_script:
- dotnet build Blazor.sln
- build.cmd /p:SkipTests=true
before_test:
- choco install googlechrome --ignore-checksum
- npm install -g selenium-standalone
- selenium-standalone install
- ps: $SeleniumProcess = Start-Process "selenium-standalone" -ArgumentList "start" -PassThru
test_script:
- dotnet test test\AllTests.proj
- build.cmd /t:Test /p:BlazorAllTests=true
after_test:
- ps: Stop-Process -Id $SeleniumProcess.Id

View File

@ -35,6 +35,6 @@ install:
- curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel Current --version latest --install-dir "$DOTNET_INSTALL_DIR"
- export PATH="$DOTNET_INSTALL_DIR:$PATH"
script:
- dotnet build Blazor.sln
- ./build.sh /p:SkipTests=true
- selenium-standalone start &
- dotnet test test/AllTests.proj
- ./build.sh /t:Test /p:BlazorAllTests=true

View File

@ -85,136 +85,262 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BlazorHosted.CSharp.Client"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BlazorHosted.CSharp.Server", "src\Microsoft.AspNetCore.Blazor.Templates\content\BlazorHosted.CSharp\BlazorHosted.CSharp.Server\BlazorHosted.CSharp.Server.csproj", "{78ED9932-0912-4F36-8F82-33DE850E7A33}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BlazorHosted.CSharp.Shared", "src\Microsoft.AspNetCore.Blazor.Templates\content\BlazorHosted.CSharp\BlazorHosted.CSharp.Shared\BlazorHosted.CSharp.Shared.csproj", "{F3E02B21-1127-431A-B832-0E53CB72097B}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BlazorHosted.CSharp.Shared", "src\Microsoft.AspNetCore.Blazor.Templates\content\BlazorHosted.CSharp\BlazorHosted.CSharp.Shared\BlazorHosted.CSharp.Shared.csproj", "{F3E02B21-1127-431A-B832-0E53CB72097B}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AspNetCore.Blazor.Razor.Extensions.Test", "test\Microsoft.AspNetCore.Blazor.Razor.Extensions.Test\Microsoft.AspNetCore.Blazor.Razor.Extensions.Test.csproj", "{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Blazor.Razor.Extensions.Test", "test\Microsoft.AspNetCore.Blazor.Razor.Extensions.Test\Microsoft.AspNetCore.Blazor.Razor.Extensions.Test.csproj", "{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tooling", "tooling", "{F563ABB6-85FB-4CFC-B0D2-1D5130E8246D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.VisualStudio.LanguageServices.Blazor", "tooling\Microsoft.VisualStudio.LanguageServices.Blazor\Microsoft.VisualStudio.LanguageServices.Blazor.csproj", "{43E39257-7DC1-46BD-9BD9-2319A1313D07}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.VisualStudio.BlazorExtension", "tooling\Microsoft.VisualStudio.BlazorExtension\Microsoft.VisualStudio.BlazorExtension.csproj", "{9088E4E4-B855-457F-AE9E-D86709A5E1F4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
DebugNoVSIX|Any CPU = DebugNoVSIX|Any CPU
Release|Any CPU = Release|Any CPU
ReleaseNoVSIX|Any CPU = ReleaseNoVSIX|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{39FEC72D-AF52-47A3-B63D-7BF0E4335248}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{39FEC72D-AF52-47A3-B63D-7BF0E4335248}.Debug|Any CPU.Build.0 = Debug|Any CPU
{39FEC72D-AF52-47A3-B63D-7BF0E4335248}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{39FEC72D-AF52-47A3-B63D-7BF0E4335248}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{39FEC72D-AF52-47A3-B63D-7BF0E4335248}.Release|Any CPU.ActiveCfg = Release|Any CPU
{39FEC72D-AF52-47A3-B63D-7BF0E4335248}.Release|Any CPU.Build.0 = Release|Any CPU
{39FEC72D-AF52-47A3-B63D-7BF0E4335248}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{39FEC72D-AF52-47A3-B63D-7BF0E4335248}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{7C53BB6B-5906-4753-B507-C9FCC2F7E5B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7C53BB6B-5906-4753-B507-C9FCC2F7E5B7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7C53BB6B-5906-4753-B507-C9FCC2F7E5B7}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{7C53BB6B-5906-4753-B507-C9FCC2F7E5B7}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{7C53BB6B-5906-4753-B507-C9FCC2F7E5B7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7C53BB6B-5906-4753-B507-C9FCC2F7E5B7}.Release|Any CPU.Build.0 = Release|Any CPU
{7C53BB6B-5906-4753-B507-C9FCC2F7E5B7}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{7C53BB6B-5906-4753-B507-C9FCC2F7E5B7}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{5A694793-3257-4D37-BB74-4A41B3894685}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5A694793-3257-4D37-BB74-4A41B3894685}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5A694793-3257-4D37-BB74-4A41B3894685}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{5A694793-3257-4D37-BB74-4A41B3894685}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{5A694793-3257-4D37-BB74-4A41B3894685}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5A694793-3257-4D37-BB74-4A41B3894685}.Release|Any CPU.Build.0 = Release|Any CPU
{5A694793-3257-4D37-BB74-4A41B3894685}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{5A694793-3257-4D37-BB74-4A41B3894685}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{118484D3-3993-45CE-97C1-6F28A517529B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{118484D3-3993-45CE-97C1-6F28A517529B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{118484D3-3993-45CE-97C1-6F28A517529B}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{118484D3-3993-45CE-97C1-6F28A517529B}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{118484D3-3993-45CE-97C1-6F28A517529B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{118484D3-3993-45CE-97C1-6F28A517529B}.Release|Any CPU.Build.0 = Release|Any CPU
{118484D3-3993-45CE-97C1-6F28A517529B}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{118484D3-3993-45CE-97C1-6F28A517529B}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{5BC2A10D-B6CA-43AE-B73C-2A41AE1039F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5BC2A10D-B6CA-43AE-B73C-2A41AE1039F9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5BC2A10D-B6CA-43AE-B73C-2A41AE1039F9}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{5BC2A10D-B6CA-43AE-B73C-2A41AE1039F9}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{5BC2A10D-B6CA-43AE-B73C-2A41AE1039F9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5BC2A10D-B6CA-43AE-B73C-2A41AE1039F9}.Release|Any CPU.Build.0 = Release|Any CPU
{5BC2A10D-B6CA-43AE-B73C-2A41AE1039F9}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{5BC2A10D-B6CA-43AE-B73C-2A41AE1039F9}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{06AAAE9E-96DE-4574-97DA-9C4C7D9FE990}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{06AAAE9E-96DE-4574-97DA-9C4C7D9FE990}.Debug|Any CPU.Build.0 = Debug|Any CPU
{06AAAE9E-96DE-4574-97DA-9C4C7D9FE990}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{06AAAE9E-96DE-4574-97DA-9C4C7D9FE990}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{06AAAE9E-96DE-4574-97DA-9C4C7D9FE990}.Release|Any CPU.ActiveCfg = Release|Any CPU
{06AAAE9E-96DE-4574-97DA-9C4C7D9FE990}.Release|Any CPU.Build.0 = Release|Any CPU
{06AAAE9E-96DE-4574-97DA-9C4C7D9FE990}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{06AAAE9E-96DE-4574-97DA-9C4C7D9FE990}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{BB34336F-E68E-4411-9805-CAAA919F5EA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BB34336F-E68E-4411-9805-CAAA919F5EA1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BB34336F-E68E-4411-9805-CAAA919F5EA1}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{BB34336F-E68E-4411-9805-CAAA919F5EA1}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{BB34336F-E68E-4411-9805-CAAA919F5EA1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BB34336F-E68E-4411-9805-CAAA919F5EA1}.Release|Any CPU.Build.0 = Release|Any CPU
{BB34336F-E68E-4411-9805-CAAA919F5EA1}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{BB34336F-E68E-4411-9805-CAAA919F5EA1}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{B4335F7C-4E86-4559-821F-F1B1C75F5FAE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B4335F7C-4E86-4559-821F-F1B1C75F5FAE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B4335F7C-4E86-4559-821F-F1B1C75F5FAE}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{B4335F7C-4E86-4559-821F-F1B1C75F5FAE}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{B4335F7C-4E86-4559-821F-F1B1C75F5FAE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B4335F7C-4E86-4559-821F-F1B1C75F5FAE}.Release|Any CPU.Build.0 = Release|Any CPU
{B4335F7C-4E86-4559-821F-F1B1C75F5FAE}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{B4335F7C-4E86-4559-821F-F1B1C75F5FAE}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{F8996835-41F7-4663-91DF-3B5652ADC37D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F8996835-41F7-4663-91DF-3B5652ADC37D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F8996835-41F7-4663-91DF-3B5652ADC37D}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{F8996835-41F7-4663-91DF-3B5652ADC37D}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{F8996835-41F7-4663-91DF-3B5652ADC37D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F8996835-41F7-4663-91DF-3B5652ADC37D}.Release|Any CPU.Build.0 = Release|Any CPU
{F8996835-41F7-4663-91DF-3B5652ADC37D}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{F8996835-41F7-4663-91DF-3B5652ADC37D}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{7FD8C650-74B3-4153-AEA1-00F4F6AF393D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7FD8C650-74B3-4153-AEA1-00F4F6AF393D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7FD8C650-74B3-4153-AEA1-00F4F6AF393D}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{7FD8C650-74B3-4153-AEA1-00F4F6AF393D}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{7FD8C650-74B3-4153-AEA1-00F4F6AF393D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7FD8C650-74B3-4153-AEA1-00F4F6AF393D}.Release|Any CPU.Build.0 = Release|Any CPU
{7FD8C650-74B3-4153-AEA1-00F4F6AF393D}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{7FD8C650-74B3-4153-AEA1-00F4F6AF393D}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{B241434A-1642-44CC-AE9A-2012B5C5BD02}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B241434A-1642-44CC-AE9A-2012B5C5BD02}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B241434A-1642-44CC-AE9A-2012B5C5BD02}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{B241434A-1642-44CC-AE9A-2012B5C5BD02}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{B241434A-1642-44CC-AE9A-2012B5C5BD02}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B241434A-1642-44CC-AE9A-2012B5C5BD02}.Release|Any CPU.Build.0 = Release|Any CPU
{B241434A-1642-44CC-AE9A-2012B5C5BD02}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{B241434A-1642-44CC-AE9A-2012B5C5BD02}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{21EF76A4-63CC-455D-907C-F86C9E442CEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{21EF76A4-63CC-455D-907C-F86C9E442CEC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{21EF76A4-63CC-455D-907C-F86C9E442CEC}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{21EF76A4-63CC-455D-907C-F86C9E442CEC}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{21EF76A4-63CC-455D-907C-F86C9E442CEC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{21EF76A4-63CC-455D-907C-F86C9E442CEC}.Release|Any CPU.Build.0 = Release|Any CPU
{21EF76A4-63CC-455D-907C-F86C9E442CEC}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{21EF76A4-63CC-455D-907C-F86C9E442CEC}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0}.Release|Any CPU.Build.0 = Release|Any CPU
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{7F0BF3EA-6985-49F6-8070-0BBA41448BB0}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.Debug|Any CPU.Build.0 = Debug|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.Release|Any CPU.ActiveCfg = Release|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.Release|Any CPU.Build.0 = Release|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{709C7EBE-EB93-4F6D-9491-D714B0D2E898}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.Release|Any CPU.Build.0 = Release|Any CPU
{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{8B3D0F1C-0E38-4E6D-BFF1-C4FDA0CD9815}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{8A19B1CE-9B62-4440-93B3-152DDBB39D0A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8A19B1CE-9B62-4440-93B3-152DDBB39D0A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8A19B1CE-9B62-4440-93B3-152DDBB39D0A}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{8A19B1CE-9B62-4440-93B3-152DDBB39D0A}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{8A19B1CE-9B62-4440-93B3-152DDBB39D0A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8A19B1CE-9B62-4440-93B3-152DDBB39D0A}.Release|Any CPU.Build.0 = Release|Any CPU
{8A19B1CE-9B62-4440-93B3-152DDBB39D0A}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{8A19B1CE-9B62-4440-93B3-152DDBB39D0A}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{4874AFF4-335D-4037-8858-BBBB987C124B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4874AFF4-335D-4037-8858-BBBB987C124B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4874AFF4-335D-4037-8858-BBBB987C124B}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{4874AFF4-335D-4037-8858-BBBB987C124B}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{4874AFF4-335D-4037-8858-BBBB987C124B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4874AFF4-335D-4037-8858-BBBB987C124B}.Release|Any CPU.Build.0 = Release|Any CPU
{4874AFF4-335D-4037-8858-BBBB987C124B}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{4874AFF4-335D-4037-8858-BBBB987C124B}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{8FD8636E-AFA5-434D-8857-06D02686741A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8FD8636E-AFA5-434D-8857-06D02686741A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8FD8636E-AFA5-434D-8857-06D02686741A}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{8FD8636E-AFA5-434D-8857-06D02686741A}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{8FD8636E-AFA5-434D-8857-06D02686741A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8FD8636E-AFA5-434D-8857-06D02686741A}.Release|Any CPU.Build.0 = Release|Any CPU
{8FD8636E-AFA5-434D-8857-06D02686741A}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{8FD8636E-AFA5-434D-8857-06D02686741A}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{2838CB6F-D2C7-4C0A-A994-C72E56F16984}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2838CB6F-D2C7-4C0A-A994-C72E56F16984}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2838CB6F-D2C7-4C0A-A994-C72E56F16984}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{2838CB6F-D2C7-4C0A-A994-C72E56F16984}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{2838CB6F-D2C7-4C0A-A994-C72E56F16984}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2838CB6F-D2C7-4C0A-A994-C72E56F16984}.Release|Any CPU.Build.0 = Release|Any CPU
{2838CB6F-D2C7-4C0A-A994-C72E56F16984}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{2838CB6F-D2C7-4C0A-A994-C72E56F16984}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{36706AC2-C851-4038-B161-9C1E44B668C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{36706AC2-C851-4038-B161-9C1E44B668C8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{36706AC2-C851-4038-B161-9C1E44B668C8}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{36706AC2-C851-4038-B161-9C1E44B668C8}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{36706AC2-C851-4038-B161-9C1E44B668C8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{36706AC2-C851-4038-B161-9C1E44B668C8}.Release|Any CPU.Build.0 = Release|Any CPU
{36706AC2-C851-4038-B161-9C1E44B668C8}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{36706AC2-C851-4038-B161-9C1E44B668C8}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{D652A019-B765-4922-B7B8-3AB1C58338D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D652A019-B765-4922-B7B8-3AB1C58338D7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D652A019-B765-4922-B7B8-3AB1C58338D7}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{D652A019-B765-4922-B7B8-3AB1C58338D7}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{D652A019-B765-4922-B7B8-3AB1C58338D7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D652A019-B765-4922-B7B8-3AB1C58338D7}.Release|Any CPU.Build.0 = Release|Any CPU
{D652A019-B765-4922-B7B8-3AB1C58338D7}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{D652A019-B765-4922-B7B8-3AB1C58338D7}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{EC2A38BF-6E77-4A8E-A731-15929544F29C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EC2A38BF-6E77-4A8E-A731-15929544F29C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EC2A38BF-6E77-4A8E-A731-15929544F29C}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{EC2A38BF-6E77-4A8E-A731-15929544F29C}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{EC2A38BF-6E77-4A8E-A731-15929544F29C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EC2A38BF-6E77-4A8E-A731-15929544F29C}.Release|Any CPU.Build.0 = Release|Any CPU
{EC2A38BF-6E77-4A8E-A731-15929544F29C}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{EC2A38BF-6E77-4A8E-A731-15929544F29C}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{29CD3FC6-49E3-4756-B5DF-E03B46E5CD45}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{29CD3FC6-49E3-4756-B5DF-E03B46E5CD45}.Debug|Any CPU.Build.0 = Debug|Any CPU
{29CD3FC6-49E3-4756-B5DF-E03B46E5CD45}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{29CD3FC6-49E3-4756-B5DF-E03B46E5CD45}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{29CD3FC6-49E3-4756-B5DF-E03B46E5CD45}.Release|Any CPU.ActiveCfg = Release|Any CPU
{29CD3FC6-49E3-4756-B5DF-E03B46E5CD45}.Release|Any CPU.Build.0 = Release|Any CPU
{29CD3FC6-49E3-4756-B5DF-E03B46E5CD45}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{29CD3FC6-49E3-4756-B5DF-E03B46E5CD45}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{AF79BB84-BAE6-4F9A-9AD5-B0E3D7455288}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AF79BB84-BAE6-4F9A-9AD5-B0E3D7455288}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AF79BB84-BAE6-4F9A-9AD5-B0E3D7455288}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{AF79BB84-BAE6-4F9A-9AD5-B0E3D7455288}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{AF79BB84-BAE6-4F9A-9AD5-B0E3D7455288}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AF79BB84-BAE6-4F9A-9AD5-B0E3D7455288}.Release|Any CPU.Build.0 = Release|Any CPU
{AF79BB84-BAE6-4F9A-9AD5-B0E3D7455288}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{AF79BB84-BAE6-4F9A-9AD5-B0E3D7455288}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{8C160273-0A1D-4D79-9F7B-7687B2D2F7C4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8C160273-0A1D-4D79-9F7B-7687B2D2F7C4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8C160273-0A1D-4D79-9F7B-7687B2D2F7C4}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{8C160273-0A1D-4D79-9F7B-7687B2D2F7C4}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{8C160273-0A1D-4D79-9F7B-7687B2D2F7C4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8C160273-0A1D-4D79-9F7B-7687B2D2F7C4}.Release|Any CPU.Build.0 = Release|Any CPU
{8C160273-0A1D-4D79-9F7B-7687B2D2F7C4}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{8C160273-0A1D-4D79-9F7B-7687B2D2F7C4}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{A092FA91-856B-4ACA-B1C2-10BDBA366185}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A092FA91-856B-4ACA-B1C2-10BDBA366185}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A092FA91-856B-4ACA-B1C2-10BDBA366185}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{A092FA91-856B-4ACA-B1C2-10BDBA366185}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A092FA91-856B-4ACA-B1C2-10BDBA366185}.Release|Any CPU.Build.0 = Release|Any CPU
{A092FA91-856B-4ACA-B1C2-10BDBA366185}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{7549444A-9C81-44DE-AD0D-2C55501EAAC7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7549444A-9C81-44DE-AD0D-2C55501EAAC7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7549444A-9C81-44DE-AD0D-2C55501EAAC7}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{7549444A-9C81-44DE-AD0D-2C55501EAAC7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7549444A-9C81-44DE-AD0D-2C55501EAAC7}.Release|Any CPU.Build.0 = Release|Any CPU
{7549444A-9C81-44DE-AD0D-2C55501EAAC7}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{78ED9932-0912-4F36-8F82-33DE850E7A33}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{78ED9932-0912-4F36-8F82-33DE850E7A33}.Debug|Any CPU.Build.0 = Debug|Any CPU
{78ED9932-0912-4F36-8F82-33DE850E7A33}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{78ED9932-0912-4F36-8F82-33DE850E7A33}.Release|Any CPU.ActiveCfg = Release|Any CPU
{78ED9932-0912-4F36-8F82-33DE850E7A33}.Release|Any CPU.Build.0 = Release|Any CPU
{78ED9932-0912-4F36-8F82-33DE850E7A33}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{F3E02B21-1127-431A-B832-0E53CB72097B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F3E02B21-1127-431A-B832-0E53CB72097B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F3E02B21-1127-431A-B832-0E53CB72097B}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{F3E02B21-1127-431A-B832-0E53CB72097B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F3E02B21-1127-431A-B832-0E53CB72097B}.Release|Any CPU.Build.0 = Release|Any CPU
{F3E02B21-1127-431A-B832-0E53CB72097B}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}.Release|Any CPU.Build.0 = Release|Any CPU
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{43E39257-7DC1-46BD-9BD9-2319A1313D07}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{43E39257-7DC1-46BD-9BD9-2319A1313D07}.Debug|Any CPU.Build.0 = Debug|Any CPU
{43E39257-7DC1-46BD-9BD9-2319A1313D07}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{43E39257-7DC1-46BD-9BD9-2319A1313D07}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU
{43E39257-7DC1-46BD-9BD9-2319A1313D07}.Release|Any CPU.ActiveCfg = Release|Any CPU
{43E39257-7DC1-46BD-9BD9-2319A1313D07}.Release|Any CPU.Build.0 = Release|Any CPU
{43E39257-7DC1-46BD-9BD9-2319A1313D07}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
{43E39257-7DC1-46BD-9BD9-2319A1313D07}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|Any CPU.Build.0 = Release|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -256,6 +382,8 @@ Global
{78ED9932-0912-4F36-8F82-33DE850E7A33} = {73DA1DFD-79F0-4BA2-B0B6-4F3A21D2C3F8}
{F3E02B21-1127-431A-B832-0E53CB72097B} = {73DA1DFD-79F0-4BA2-B0B6-4F3A21D2C3F8}
{FF25111E-5A3E-48A3-96D8-08A2C5A2A91C} = {ADA3AE29-F6DE-49F6-8C7C-B321508CAE8E}
{43E39257-7DC1-46BD-9BD9-2319A1313D07} = {F563ABB6-85FB-4CFC-B0D2-1D5130E8246D}
{9088E4E4-B855-457F-AE9E-D86709A5E1F4} = {F563ABB6-85FB-4CFC-B0D2-1D5130E8246D}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {504DA352-6788-4DC0-8705-82167E72A4D3}

View File

@ -1,112 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26124.0
MinimumVisualStudioVersion = 15.0.26124.0
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tooling", "tooling", "{1AC24BB5-AEBD-4D5B-B86F-8C606EFFFFFB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.VisualStudio.BlazorExtension", "tooling\Microsoft.VisualStudio.BlazorExtension\Microsoft.VisualStudio.BlazorExtension.csproj", "{9088E4E4-B855-457F-AE9E-D86709A5E1F4}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.VisualStudio.LanguageServices.Blazor", "tooling\Microsoft.VisualStudio.LanguageServices.Blazor\Microsoft.VisualStudio.LanguageServices.Blazor.csproj", "{5884589D-4A06-4F5B-B983-8F8D34696550}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{74280251-105B-4618-A9D7-951076793E3D}"
ProjectSection(SolutionItems) = preProject
build\Key.snk = build\Key.snk
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{91810C0E-892D-40EF-BDC0-5470B37E255F}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AngleSharpBuilder", "src\anglesharp\AngleSharpBuilder\AngleSharpBuilder.csproj", "{E5067AD8-3AE7-442A-86C5-D19DBC48E961}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "anglesharp", "anglesharp", "{9DEA0869-2F17-419F-8F6A-53DCA898D3D6}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Blazor.Razor.Extensions", "src\Microsoft.AspNetCore.Blazor.Razor.Extensions\Microsoft.AspNetCore.Blazor.Razor.Extensions.csproj", "{319463A4-64C8-4A96-BEFD-2952BBD5FF67}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Blazor.Templates", "src\Microsoft.AspNetCore.Blazor.Templates\Microsoft.AspNetCore.Blazor.Templates.csproj", "{EDD21533-C6E6-4F85-BE4F-10E06756E24C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|x64.ActiveCfg = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|x64.Build.0 = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|x86.ActiveCfg = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|x86.Build.0 = Debug|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|Any CPU.Build.0 = Release|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|x64.ActiveCfg = Release|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|x64.Build.0 = Release|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|x86.ActiveCfg = Release|Any CPU
{9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|x86.Build.0 = Release|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Debug|x64.ActiveCfg = Debug|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Debug|x64.Build.0 = Debug|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Debug|x86.ActiveCfg = Debug|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Debug|x86.Build.0 = Debug|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Release|Any CPU.Build.0 = Release|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Release|x64.ActiveCfg = Release|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Release|x64.Build.0 = Release|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Release|x86.ActiveCfg = Release|Any CPU
{5884589D-4A06-4F5B-B983-8F8D34696550}.Release|x86.Build.0 = Release|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Debug|x64.ActiveCfg = Debug|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Debug|x64.Build.0 = Debug|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Debug|x86.ActiveCfg = Debug|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Debug|x86.Build.0 = Debug|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Release|Any CPU.Build.0 = Release|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Release|x64.ActiveCfg = Release|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Release|x64.Build.0 = Release|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Release|x86.ActiveCfg = Release|Any CPU
{E5067AD8-3AE7-442A-86C5-D19DBC48E961}.Release|x86.Build.0 = Release|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Debug|Any CPU.Build.0 = Debug|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Debug|x64.ActiveCfg = Debug|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Debug|x64.Build.0 = Debug|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Debug|x86.ActiveCfg = Debug|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Debug|x86.Build.0 = Debug|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Release|Any CPU.ActiveCfg = Release|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Release|Any CPU.Build.0 = Release|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Release|x64.ActiveCfg = Release|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Release|x64.Build.0 = Release|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Release|x86.ActiveCfg = Release|Any CPU
{319463A4-64C8-4A96-BEFD-2952BBD5FF67}.Release|x86.Build.0 = Release|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Debug|x64.ActiveCfg = Debug|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Debug|x64.Build.0 = Debug|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Debug|x86.ActiveCfg = Debug|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Debug|x86.Build.0 = Debug|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Release|Any CPU.Build.0 = Release|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Release|x64.ActiveCfg = Release|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Release|x64.Build.0 = Release|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Release|x86.ActiveCfg = Release|Any CPU
{EDD21533-C6E6-4F85-BE4F-10E06756E24C}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{9088E4E4-B855-457F-AE9E-D86709A5E1F4} = {1AC24BB5-AEBD-4D5B-B86F-8C606EFFFFFB}
{5884589D-4A06-4F5B-B983-8F8D34696550} = {1AC24BB5-AEBD-4D5B-B86F-8C606EFFFFFB}
{E5067AD8-3AE7-442A-86C5-D19DBC48E961} = {9DEA0869-2F17-419F-8F6A-53DCA898D3D6}
{9DEA0869-2F17-419F-8F6A-53DCA898D3D6} = {91810C0E-892D-40EF-BDC0-5470B37E255F}
{319463A4-64C8-4A96-BEFD-2952BBD5FF67} = {91810C0E-892D-40EF-BDC0-5470B37E255F}
{EDD21533-C6E6-4F85-BE4F-10E06756E24C} = {91810C0E-892D-40EF-BDC0-5470B37E255F}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {248760B5-9F71-4110-8DBC-DDAB615AD88E}
EndGlobalSection
EndGlobal

View File

@ -1,15 +1,31 @@
<Project>
<Import
Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), AspNetCoreSettings.props))\AspNetCoreSettings.props"
Condition=" '$(CI)' != 'true' AND '$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), AspNetCoreSettings.props))' != '' " />
<Import Project="version.props" />
<Import Project="build\dependencies.props" />
<Import Project="build\sources.props" />
<PropertyGroup>
<Product>Microsoft ASP.NET Core Blazor</Product>
<RepositoryUrl>https://github.com/aspnet/blazor</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<RepositoryRoot>$(MSBuildThisFileDirectory)</RepositoryRoot>
<AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)build\Key.snk</AssemblyOriginatorKeyFile>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<PackageOutputPath>$(MSBuildThisFileDirectory)artifacts\build</PackageOutputPath>
<AssemblySigningCertName>Microsoft</AssemblySigningCertName>
<!-- Our customizations -->
<SignAssembly>false</SignAssembly>
<EnableApiCheck>false</EnableApiCheck>
<PublicSign>false</PublicSign>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Internal.AspNetCore.Sdk" PrivateAssets="All" Version="$(InternalAspNetCoreSdkPackageVersion)" />
</ItemGroup>
<PropertyGroup>
<RazorPackageVersion>2.1.0-preview2-30230</RazorPackageVersion>
</PropertyGroup>

6
Directory.Build.targets Normal file
View File

@ -0,0 +1,6 @@
<Project>
<PropertyGroup>
<RuntimeFrameworkVersion Condition=" '$(TargetFramework)' == 'netcoreapp2.0' ">$(MicrosoftNETCoreApp20PackageVersion)</RuntimeFrameworkVersion>
<RuntimeFrameworkVersion Condition=" '$(TargetFramework)' == 'netcoreapp2.1' ">$(MicrosoftNETCoreApp21PackageVersion)</RuntimeFrameworkVersion>
</PropertyGroup>
</Project>

View File

@ -33,14 +33,15 @@ We are still *very early* in this project. There isn't yet anything you can down
## Build
Prerequisites:
- [.NET Core SDK](https://dot.net/core) (>2.1.4)
- [Node.js](https://nodejs.org/) (>8.3)
Run `dotnet build Blazor.sln` from the solution directory.
The build script will acquire the required version of the .NET runtime and .NET SDK on first run.
## Run tests
Run `build.cmd` or `build.sh` from the solution directory.
Run `dotnet test test/<dir>/<project>.Test.csproj`
## Run unit tests
Run `build.cmd /t:Test` or `build.sh /t:Test`
## Run end-to-end tests
@ -52,35 +53,27 @@ Prerequisites:
Run `selenium-standalone start`
Run `dotnet test test\Microsoft.AspNetCore.Blazor.E2ETest\Microsoft.AspNetCore.Blazor.E2ETest.csproj`
Run `build.cmd /t:Test /p:BlazorAllTests=true` or `build.sh /t:Test /p:BlazorAllTests=true`
## Run all tests
Install prerequisites for E2E tests
Run `dotnet test test\AllTests.proj`
## Build VS Tooling
## Opening in Visual Studio
Prerequisites:
- Visual Studio 2017 15.6 (or newer)
- Visual Studio extension development features (install via Visual Studio Installer)
- Visual Studio 2017 15.7 preview 1 (or newer) - [download](https://www.visualstudio.com/thank-you-downloading-visual-studio/?ch=pre&sku=Enterprise&rel=15)
Open a VS Developer Command Prompt
We recommend getting the preview version of Visual Studio and updating it frequently. The Blazor
editing experience in Visual Studio depends on new features of the Razor language tooling and
will be updated frequently.
Run the following instructions from the solution directory.
When installing Visual Studio choose the following workloads:
- ASP.NET and Web Development
- Visual Studio extension development features
```shell
msbuild BlazorTooling.sln /t:Restore
msbuild BlazorTooling.sln
```
## Developing the Blazor VS Tooling
## Use VS Tooling
To do local development of the Blazor tooling experience in VS, select the `Microsoft.VisualStudio.BlazorExtension`
project and launch the debugger.
To install the Tooling following prerequisites must be installed first:
- Visual Studio 2017 15.6 (or newer)
- Workload: ASP.NET and web development
The Blazor Visual Studio tooling will build as part of the command line build when on Windows.
## Contributing

2
build.cmd Normal file
View File

@ -0,0 +1,2 @@
@ECHO OFF
PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = '';& '%~dp0run.ps1' default-build %*; exit $LASTEXITCODE"

8
build.sh Executable file
View File

@ -0,0 +1,8 @@
#!/usr/bin/env bash
set -euo pipefail
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
# Call "sync" between "chmod" and execution to prevent "text file busy" error in Docker (aufs)
chmod +x "$DIR/run.sh"; sync
"$DIR/run.sh" default-build "$@"

120
build/VSIX.targets Normal file
View File

@ -0,0 +1,120 @@
<Project>
<PropertyGroup>
<BuildVSIX Condition="'$(BuildVSIX)' ==''">true</BuildVSIX>
<RestoreDependsOn Condition="'$(OS)'=='Windows_NT' AND '$(BuildVSIX)' == 'true'">$(RestoreDependsOn);RestoreVSIX</RestoreDependsOn>
<PackageDependsOn Condition="'$(OS)'=='Windows_NT' AND '$(BuildVSIX)' == 'true'">$(PackageDependsOn);PackageVSIX</PackageDependsOn>
<GetArtifactInfoDependsOn Condition="'$(OS)'=='Windows_NT' AND '$(BuildVSIX)' == 'true'">$(GetArtifactInfoDependsOn);GetVSIXArtifactInfo</GetArtifactInfoDependsOn>
<VSIXName>Microsoft.VisualStudio.BlazorExtension</VSIXName>
<VSIXOutputPath>$(BuildDir)$(VSIXName).vsix</VSIXOutputPath>
<VSIXManifestOutputPath>$(BuildDir)$(VSIXName).json</VSIXManifestOutputPath>
<VSIXProject>$(RepositoryRoot)tooling\$(VSIXName)\$(VSIXName).csproj</VSIXProject>
<VSIXSymbolsOutputPath>$(BuildDir)$(VSIXName).pdb</VSIXSymbolsOutputPath>
<VSIXArtifactCategory>shipoob</VSIXArtifactCategory>
</PropertyGroup>
<Target
Name="GenerateVSIX"
DependsOnTargets="RestoreVSIX;PackageVSIX"
Condition="'$(OS)'=='Windows_NT'" />
<!-- This target is required so KoreBuild can generate a bill of materials with relevant information about the VSIX. -->
<Target Name="GetVSIXArtifactInfo">
<ItemGroup>
<ArtifactInfo Include="$(VSIXOutputPath)">
<ArtifactType>VsixPackage</ArtifactType>
<Version>$(PackageVersion)</Version>
<Category>$(VSIXArtifactCategory)</Category>
<PackageId>$(VSIXName)</PackageId>
</ArtifactInfo>
<ArtifactInfo Include="$(VSIXSymbolsOutputPath)">
<ArtifactType>SymbolsFile</ArtifactType>
<Category>$(VSIXArtifactCategory)</Category>
<Dependencies>$(VSIXName).vsix</Dependencies>
<DebugType>full</DebugType>
</ArtifactInfo>
<ArtifactInfo Include="$(VSIXManifestOutputPath)" Condition="'$(IsProductComponent)'=='true'">
<ArtifactType>VsixPackageManifestFile</ArtifactType>
<Category>$(VSIXArtifactCategory)</Category>
<Dependencies>$(VSIXName).vsix</Dependencies>
<PackageId>$(VSIXName)</PackageId>
</ArtifactInfo>
<FilesToSign Include="$(VSIXOutputPath)" Certificate="Vsix" />
<FilesToExcludeFromSigning Include="$(VSIXManifestOutputPath)" />
<FilesToExcludeFromSigning Include="$(VSIXSymbolsOutputPath)" />
</ItemGroup>
</Target>
<!--
VisualStudioMSBuildx86Path is set by the GetToolsets target in KoreBuild if a version of VS matching the requirements in korebuild.json is found.
-->
<Target Name="RestoreVSIX" DependsOnTargets="GetToolsets">
<PropertyGroup>
<VSIXResponseFilePath>$(LogOutputDir)vsix-restore.rsp</VSIXResponseFilePath>
</PropertyGroup>
<ItemGroup>
<MSBuildArguments Remove="@(MSBuildArguments)" />
<MSBuildArguments Include="
$(VSIXProject);
/t:Restore;
/m;
/v:m;
/p:Configuration=$(Configuration);
/p:BuildNumber=$(BuildNumber);" />
<MSBuildArguments Include="/p:DotNetPackageVersionPropsPath=$(DotNetPackageVersionPropsPath)" Condition="'$(DotNetPackageVersionPropsPath)' != ''" />
<MSBuildArguments Include="/p:DotNetRestoreSourcePropsPath=$(DotNetRestoreSourcePropsPath)" Condition="'$(DotNetRestoreSourcePropsPath)' != ''" />
</ItemGroup>
<MakeDir Directories="$(LogOutputDir)" />
<WriteLinesToFile
File="$(VSIXResponseFilePath)"
Lines="@(MSBuildArguments)"
Overwrite="true" />
<Exec Command="&quot;$(VisualStudioMSBuildx86Path)&quot; @&quot;$(VSIXResponseFilePath)&quot;"
Condition="'$(VisualStudioMSBuildx86Path)' != ''" />
</Target>
<Target Name="PackageVSIX" DependsOnTargets="GetToolsets">
<Warning Text="Could not find a version of Visual Studio that has the Visual Studio SDK installed. This is required to build the Razor VSIX. Skipping."
Condition="'$(VisualStudioMSBuildx86Path)' == ''" />
<PropertyGroup>
<VSIXLogFilePath>$(LogOutputDir)vsix.log</VSIXLogFilePath>
<VSIXResponseFilePath>$(LogOutputDir)vsix-build.rsp</VSIXResponseFilePath>
</PropertyGroup>
<ItemGroup>
<MSBuildArguments Remove="@(MSBuildArguments)" />
<MSBuildArguments Include="
$(VSIXProject);
/m;
/v:M;
/fl;
/flp:LogFile=$(VSIXLogFilePath);
/p:DeployExtension=false;
/p:TargetVSIXContainer=$(VSIXOutputPath);
/p:SymbolsPublishDir=$(BuildDir);
/p:Configuration=$(Configuration);" />
</ItemGroup>
<MakeDir Directories="$(LogOutputDir)" />
<WriteLinesToFile
File="$(VSIXResponseFilePath)"
Lines="@(MSBuildArguments)"
Overwrite="true" />
<Exec Command="&quot;$(VisualStudioMSBuildx86Path)&quot; @&quot;$(VSIXResponseFilePath)&quot;"
Condition="'$(VisualStudioMSBuildx86Path)' != ''" />
</Target>
</Project>

View File

@ -1,6 +1 @@
Invoke-WebRequest -useb 'https://dot.net/v1/dotnet-install.ps1' -OutFile .\build\dotnet-install.ps1
.\build\dotnet-install.ps1 -channel Current -version 2.1.3 -InstallDir dotnetsdk
dotnet --version
dotnet pack Blazor.sln --configuration Release
cmd /c "C:\Program Files (x86)\Microsoft Visual Studio\aspnetci\Enterprise\MSBuild\15.0\Bin\MSBuild.exe" BlazorTooling.sln /t:Restore
cmd /c "C:\Program Files (x86)\Microsoft Visual Studio\aspnetci\Enterprise\MSBuild\15.0\Bin\MSBuild.exe" BlazorTooling.sln /p:DeployExtension=false /p:TargetVSIXContainer=..\..\artifacts\build\Microsoft.VisualStudio.BlazorExtension.vsix
build.cmd

10
build/dependencies.props Normal file
View File

@ -0,0 +1,10 @@
<Project>
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
</PropertyGroup>
<PropertyGroup Label="Package Versions">
<InternalAspNetCoreSdkPackageVersion>2.1.0-preview2-15704</InternalAspNetCoreSdkPackageVersion>
</PropertyGroup>
<Import Project="$(DotNetPackageVersionPropsPath)" Condition=" '$(DotNetPackageVersionPropsPath)' != '' " />
</Project>

29
build/repo.props Normal file
View File

@ -0,0 +1,29 @@
<Project>
<Import Project="dependencies.props" />
<PropertyGroup>
<EnableBenchmarkValidation>false</EnableBenchmarkValidation>
</PropertyGroup>
<PropertyGroup>
<!-- These properties are use by the automation that updates dependencies.props -->
<LineupPackageId>Internal.AspNetCore.Universe.Lineup</LineupPackageId>
<LineupPackageRestoreSource>https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json</LineupPackageRestoreSource>
<!-- Let us hardcode versions -->
<DisablePackageReferenceRestrictions>true</DisablePackageReferenceRestrictions>
</PropertyGroup>
<!--
By default, this excludes the end-to-end tests from the repo-level build command.
The CI will script these directly by passing BlazorAllTests=true
-->
<ItemGroup Condition="'$(BlazorAllTests)'!='true'">
<ExcludeFromTest Include="$(RepositoryRoot)test\Microsoft.AspNetCore.Blazor.E2ETest\Microsoft.AspNetCore.Blazor.E2ETest.csproj" />
</ItemGroup>
<ItemGroup>
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp20PackageVersion)" />
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp21PackageVersion)" />
</ItemGroup>
</Project>

17
build/repo.targets Normal file
View File

@ -0,0 +1,17 @@
<Project>
<Import Project="VSIX.targets" />
<ItemGroup>
<Solutions Update="$(RepositoryRoot)Blazor.sln">
<!-- the 'DebugNoVSIX' and 'ReleaseNoVSIX' configurations exclude the VSIX project, which doesn't build with Microsoft.NET.Sdk yet. -->
<AdditionalProperties>Configuration=$(Configuration)NoVSIX</AdditionalProperties>
</Solutions>
</ItemGroup>
<!--
Get Anglesharp built right away. This isn't needed for correctness, but helps avoid concurrency problems.
-->
<Target Name="BuildAngleSharp" BeforeTargets="BuildSolutions">
<Message Importance="High" Text="Building Anglesharp..." />
<MSBuild Projects="$(MSBuildThisFileDirectory)..\src\anglesharp\AngleSharpBuilder\AngleSharpBuilder.csproj" />
</Target>
</Project>

16
build/sources.props Normal file
View File

@ -0,0 +1,16 @@
<Project>
<Import Project="$(DotNetRestoreSourcePropsPath)" Condition="'$(DotNetRestoreSourcePropsPath)' != ''"/>
<PropertyGroup Label="RestoreSources">
<RestoreSources>$(DotNetRestoreSources)</RestoreSources>
<RestoreSources Condition="'$(DotNetBuildOffline)' != 'true' AND '$(AspNetUniverseBuildOffline)' != 'true' ">
$(RestoreSources);
https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json;
https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json
</RestoreSources>
<RestoreSources Condition="'$(DotNetBuildOffline)' != 'true'">
$(RestoreSources);
https://api.nuget.org/v3/index.json;
</RestoreSources>
</PropertyGroup>
</Project>

View File

@ -1,5 +1 @@
{
"sdk": {
"version": "2.1.3"
}
}
{ "sdk": { "version": "2.1.300-preview2-008322" } }

2
korebuild-lock.txt Normal file
View File

@ -0,0 +1,2 @@
version:2.1.0-preview2-15735
commithash:e1c2a4b79748d853196318c6e2e52151846070bd

14
korebuild.json Normal file
View File

@ -0,0 +1,14 @@
{
"$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/dev/tools/korebuild.schema.json",
"channel": "dev",
"toolsets": {
"visualstudio": {
"required": false,
"includePrerelease": true,
"minVersion": "15.0.26730.03",
"requiredWorkloads": [
"Microsoft.VisualStudio.Component.VSSDK"
]
}
}
}

View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="aspnetcore-dev" value="https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json" />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
</configuration>

2
run.cmd Normal file
View File

@ -0,0 +1,2 @@
@ECHO OFF
PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = '';& '%~dp0run.ps1' %*; exit $LASTEXITCODE"

196
run.ps1 Normal file
View File

@ -0,0 +1,196 @@
#!/usr/bin/env powershell
#requires -version 4
<#
.SYNOPSIS
Executes KoreBuild commands.
.DESCRIPTION
Downloads korebuild if required. Then executes the KoreBuild command. To see available commands, execute with `-Command help`.
.PARAMETER Command
The KoreBuild command to run.
.PARAMETER Path
The folder to build. Defaults to the folder containing this script.
.PARAMETER Channel
The channel of KoreBuild to download. Overrides the value from the config file.
.PARAMETER DotNetHome
The directory where .NET Core tools will be stored.
.PARAMETER ToolsSource
The base url where build tools can be downloaded. Overrides the value from the config file.
.PARAMETER Update
Updates KoreBuild to the latest version even if a lock file is present.
.PARAMETER ConfigFile
The path to the configuration file that stores values. Defaults to korebuild.json.
.PARAMETER ToolsSourceSuffix
The Suffix to append to the end of the ToolsSource. Useful for query strings in blob stores.
.PARAMETER Arguments
Arguments to be passed to the command
.NOTES
This function will create a file $PSScriptRoot/korebuild-lock.txt. This lock file can be committed to source, but does not have to be.
When the lockfile is not present, KoreBuild will create one using latest available version from $Channel.
The $ConfigFile is expected to be an JSON file. It is optional, and the configuration values in it are optional as well. Any options set
in the file are overridden by command line parameters.
.EXAMPLE
Example config file:
```json
{
"$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/dev/tools/korebuild.schema.json",
"channel": "dev",
"toolsSource": "https://aspnetcore.blob.core.windows.net/buildtools"
}
```
#>
[CmdletBinding(PositionalBinding = $false)]
param(
[Parameter(Mandatory = $true, Position = 0)]
[string]$Command,
[string]$Path = $PSScriptRoot,
[Alias('c')]
[string]$Channel,
[Alias('d')]
[string]$DotNetHome,
[Alias('s')]
[string]$ToolsSource,
[Alias('u')]
[switch]$Update,
[string]$ConfigFile,
[string]$ToolsSourceSuffix,
[Parameter(ValueFromRemainingArguments = $true)]
[string[]]$Arguments
)
Set-StrictMode -Version 2
$ErrorActionPreference = 'Stop'
#
# Functions
#
function Get-KoreBuild {
$lockFile = Join-Path $Path 'korebuild-lock.txt'
if (!(Test-Path $lockFile) -or $Update) {
Get-RemoteFile "$ToolsSource/korebuild/channels/$Channel/latest.txt" $lockFile $ToolsSourceSuffix
}
$version = Get-Content $lockFile | Where-Object { $_ -like 'version:*' } | Select-Object -first 1
if (!$version) {
Write-Error "Failed to parse version from $lockFile. Expected a line that begins with 'version:'"
}
$version = $version.TrimStart('version:').Trim()
$korebuildPath = Join-Paths $DotNetHome ('buildtools', 'korebuild', $version)
if (!(Test-Path $korebuildPath)) {
Write-Host -ForegroundColor Magenta "Downloading KoreBuild $version"
New-Item -ItemType Directory -Path $korebuildPath | Out-Null
$remotePath = "$ToolsSource/korebuild/artifacts/$version/korebuild.$version.zip"
try {
$tmpfile = Join-Path ([IO.Path]::GetTempPath()) "KoreBuild-$([guid]::NewGuid()).zip"
Get-RemoteFile $remotePath $tmpfile $ToolsSourceSuffix
if (Get-Command -Name 'Expand-Archive' -ErrorAction Ignore) {
# Use built-in commands where possible as they are cross-plat compatible
Expand-Archive -Path $tmpfile -DestinationPath $korebuildPath
}
else {
# Fallback to old approach for old installations of PowerShell
Add-Type -AssemblyName System.IO.Compression.FileSystem
[System.IO.Compression.ZipFile]::ExtractToDirectory($tmpfile, $korebuildPath)
}
}
catch {
Remove-Item -Recurse -Force $korebuildPath -ErrorAction Ignore
throw
}
finally {
Remove-Item $tmpfile -ErrorAction Ignore
}
}
return $korebuildPath
}
function Join-Paths([string]$path, [string[]]$childPaths) {
$childPaths | ForEach-Object { $path = Join-Path $path $_ }
return $path
}
function Get-RemoteFile([string]$RemotePath, [string]$LocalPath, [string]$RemoteSuffix) {
if ($RemotePath -notlike 'http*') {
Copy-Item $RemotePath $LocalPath
return
}
$retries = 10
while ($retries -gt 0) {
$retries -= 1
try {
Invoke-WebRequest -UseBasicParsing -Uri $($RemotePath + $RemoteSuffix) -OutFile $LocalPath
return
}
catch {
Write-Verbose "Request failed. $retries retries remaining"
}
}
Write-Error "Download failed: '$RemotePath'."
}
#
# Main
#
# Load configuration or set defaults
$Path = Resolve-Path $Path
if (!$ConfigFile) { $ConfigFile = Join-Path $Path 'korebuild.json' }
if (Test-Path $ConfigFile) {
try {
$config = Get-Content -Raw -Encoding UTF8 -Path $ConfigFile | ConvertFrom-Json
if ($config) {
if (!($Channel) -and (Get-Member -Name 'channel' -InputObject $config)) { [string] $Channel = $config.channel }
if (!($ToolsSource) -and (Get-Member -Name 'toolsSource' -InputObject $config)) { [string] $ToolsSource = $config.toolsSource}
}
}
catch {
Write-Warning "$ConfigFile could not be read. Its settings will be ignored."
Write-Warning $Error[0]
}
}
if (!$DotNetHome) {
$DotNetHome = if ($env:DOTNET_HOME) { $env:DOTNET_HOME } `
elseif ($env:USERPROFILE) { Join-Path $env:USERPROFILE '.dotnet'} `
elseif ($env:HOME) {Join-Path $env:HOME '.dotnet'}`
else { Join-Path $PSScriptRoot '.dotnet'}
}
if (!$Channel) { $Channel = 'dev' }
if (!$ToolsSource) { $ToolsSource = 'https://aspnetcore.blob.core.windows.net/buildtools' }
# Execute
$korebuildPath = Get-KoreBuild
Import-Module -Force -Scope Local (Join-Path $korebuildPath 'KoreBuild.psd1')
try {
Set-KoreBuildSettings -ToolsSource $ToolsSource -DotNetHome $DotNetHome -RepoPath $Path -ConfigFile $ConfigFile
Invoke-KoreBuildCommand $Command @Arguments
}
finally {
Remove-Module 'KoreBuild' -ErrorAction Ignore
}

231
run.sh Executable file
View File

@ -0,0 +1,231 @@
#!/usr/bin/env bash
set -euo pipefail
#
# variables
#
RESET="\033[0m"
RED="\033[0;31m"
YELLOW="\033[0;33m"
MAGENTA="\033[0;95m"
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
[ -z "${DOTNET_HOME:-}" ] && DOTNET_HOME="$HOME/.dotnet"
verbose=false
update=false
repo_path="$DIR"
channel=''
tools_source=''
tools_source_suffix=''
#
# Functions
#
__usage() {
echo "Usage: $(basename "${BASH_SOURCE[0]}") command [options] [[--] <Arguments>...]"
echo ""
echo "Arguments:"
echo " command The command to be run."
echo " <Arguments>... Arguments passed to the command. Variable number of arguments allowed."
echo ""
echo "Options:"
echo " --verbose Show verbose output."
echo " -c|--channel <CHANNEL> The channel of KoreBuild to download. Overrides the value from the config file.."
echo " --config-file <FILE> The path to the configuration file that stores values. Defaults to korebuild.json."
echo " -d|--dotnet-home <DIR> The directory where .NET Core tools will be stored. Defaults to '\$DOTNET_HOME' or '\$HOME/.dotnet."
echo " --path <PATH> The directory to build. Defaults to the directory containing the script."
echo " -s|--tools-source|-ToolsSource <URL> The base url where build tools can be downloaded. Overrides the value from the config file."
echo " --tools-source-suffix|-ToolsSourceSuffix <SUFFIX> The suffix to append to tools-source. Useful for query strings."
echo " -u|--update Update to the latest KoreBuild even if the lock file is present."
echo ""
echo "Description:"
echo " This function will create a file \$DIR/korebuild-lock.txt. This lock file can be committed to source, but does not have to be."
echo " When the lockfile is not present, KoreBuild will create one using latest available version from \$channel."
if [[ "${1:-}" != '--no-exit' ]]; then
exit 2
fi
}
get_korebuild() {
local version
local lock_file="$repo_path/korebuild-lock.txt"
if [ ! -f "$lock_file" ] || [ "$update" = true ]; then
__get_remote_file "$tools_source/korebuild/channels/$channel/latest.txt" "$lock_file" "$tools_source_suffix"
fi
version="$(grep 'version:*' -m 1 "$lock_file")"
if [[ "$version" == '' ]]; then
__error "Failed to parse version from $lock_file. Expected a line that begins with 'version:'"
return 1
fi
version="$(echo "${version#version:}" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')"
local korebuild_path="$DOTNET_HOME/buildtools/korebuild/$version"
{
if [ ! -d "$korebuild_path" ]; then
mkdir -p "$korebuild_path"
local remote_path="$tools_source/korebuild/artifacts/$version/korebuild.$version.zip"
tmpfile="$(mktemp)"
echo -e "${MAGENTA}Downloading KoreBuild ${version}${RESET}"
if __get_remote_file "$remote_path" "$tmpfile" "$tools_source_suffix"; then
unzip -q -d "$korebuild_path" "$tmpfile"
fi
rm "$tmpfile" || true
fi
source "$korebuild_path/KoreBuild.sh"
} || {
if [ -d "$korebuild_path" ]; then
echo "Cleaning up after failed installation"
rm -rf "$korebuild_path" || true
fi
return 1
}
}
__error() {
echo -e "${RED}error: $*${RESET}" 1>&2
}
__warn() {
echo -e "${YELLOW}warning: $*${RESET}"
}
__machine_has() {
hash "$1" > /dev/null 2>&1
return $?
}
__get_remote_file() {
local remote_path=$1
local local_path=$2
local remote_path_suffix=$3
if [[ "$remote_path" != 'http'* ]]; then
cp "$remote_path" "$local_path"
return 0
fi
local failed=false
if __machine_has wget; then
wget --tries 10 --quiet -O "$local_path" "${remote_path}${remote_path_suffix}" || failed=true
else
failed=true
fi
if [ "$failed" = true ] && __machine_has curl; then
failed=false
curl --retry 10 -sSL -f --create-dirs -o "$local_path" "${remote_path}${remote_path_suffix}" || failed=true
fi
if [ "$failed" = true ]; then
__error "Download failed: $remote_path" 1>&2
return 1
fi
}
#
# main
#
command="${1:-}"
shift
while [[ $# -gt 0 ]]; do
case $1 in
-\?|-h|--help)
__usage --no-exit
exit 0
;;
-c|--channel|-Channel)
shift
channel="${1:-}"
[ -z "$channel" ] && __usage
;;
--config-file|-ConfigFile)
shift
config_file="${1:-}"
[ -z "$config_file" ] && __usage
if [ ! -f "$config_file" ]; then
__error "Invalid value for --config-file. $config_file does not exist."
exit 1
fi
;;
-d|--dotnet-home|-DotNetHome)
shift
DOTNET_HOME="${1:-}"
[ -z "$DOTNET_HOME" ] && __usage
;;
--path|-Path)
shift
repo_path="${1:-}"
[ -z "$repo_path" ] && __usage
;;
-s|--tools-source|-ToolsSource)
shift
tools_source="${1:-}"
[ -z "$tools_source" ] && __usage
;;
--tools-source-suffix|-ToolsSourceSuffix)
shift
tools_source_suffix="${1:-}"
[ -z "$tools_source_suffix" ] && __usage
;;
-u|--update|-Update)
update=true
;;
--verbose|-Verbose)
verbose=true
;;
--)
shift
break
;;
*)
break
;;
esac
shift
done
if ! __machine_has unzip; then
__error 'Missing required command: unzip'
exit 1
fi
if ! __machine_has curl && ! __machine_has wget; then
__error 'Missing required command. Either wget or curl is required.'
exit 1
fi
[ -z "${config_file:-}" ] && config_file="$repo_path/korebuild.json"
if [ -f "$config_file" ]; then
if __machine_has jq ; then
if jq '.' "$config_file" >/dev/null ; then
config_channel="$(jq -r 'select(.channel!=null) | .channel' "$config_file")"
config_tools_source="$(jq -r 'select(.toolsSource!=null) | .toolsSource' "$config_file")"
else
__warn "$config_file is invalid JSON. Its settings will be ignored."
fi
elif __machine_has python ; then
if python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'))" >/dev/null ; then
config_channel="$(python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['channel'] if 'channel' in obj else '')")"
config_tools_source="$(python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['toolsSource'] if 'toolsSource' in obj else '')")"
else
__warn "$config_file is invalid JSON. Its settings will be ignored."
fi
else
__warn 'Missing required command: jq or pyton. Could not parse the JSON file. Its settings will be ignored.'
fi
[ ! -z "${config_channel:-}" ] && channel="$config_channel"
[ ! -z "${config_tools_source:-}" ] && tools_source="$config_tools_source"
fi
[ -z "$channel" ] && channel='dev'
[ -z "$tools_source" ] && tools_source='https://aspnetcore.blob.core.windows.net/buildtools'
get_korebuild
set_korebuildsettings "$tools_source" "$DOTNET_HOME" "$repo_path" "$config_file"
invoke_korebuild_command "$command" "$@"

View File

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk.Razor/2.1.0-preview2-30230">
<Project Sdk="Microsoft.NET.Sdk.Razor">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>

View File

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk.Razor/2.1.0-preview2-30230">
<Project Sdk="Microsoft.NET.Sdk.Razor">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>

View File

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk.Razor/2.1.0-preview2-30230;Microsoft.NET.Sdk.Web">
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>

View File

@ -27,6 +27,27 @@
<MSBuild Projects="$(MSBuildProjectFullPath)" Targets="Publish" Properties="TargetFramework=%(_TargetFramework.Identity)" />
</Target>
<!-- Our build tools and nuget don't play well together with hand-authoring a .nuspec -->
<Target Name="_GetArtifactInfoWorkaround" AfterTargets="GetSignedPackageFiles">
<ItemGroup>
<ArtifactInfo Include="$(PackageOutputPath)$(PackageId).$(PackageVersion).symbols.nupkg">
<ArtifactType>NuGetSymbolsPackage</ArtifactType>
<PackageId>$(PackageId)</PackageId>
<Version>$(PackageVersion)</Version>
<TargetFramework>$(TargetFramework)</TargetFramework>
<TargetFrameworks>$([MSBuild]::Escape($(TargetFrameworks)))</TargetFrameworks>
<SourceIncluded>$(IncludeSource)</SourceIncluded>
<PackageType>$(PackageType)</PackageType>
<RepositoryRoot>$(RepositoryRoot)</RepositoryRoot>
<RepositoryUrl>$(RepositoryUrl)</RepositoryUrl>
<Category>$(PackageArtifactCategory)</Category>
<Certificate>$(PackageSigningCertName)</Certificate>
<ShouldBeSigned Condition="'$(PackageSigningCertName)' != '' OR @(SignedPackageFile->Count()) != 0 ">true</ShouldBeSigned>
<ShouldBeSigned Condition=" '$(DisableCodeSigning)' == 'true' ">false</ShouldBeSigned>
<IsContainer>true</IsContainer>
</ArtifactInfo>
</ItemGroup>
</Target>
<ItemGroup>
<None Remove="tools\**" />
</ItemGroup>
@ -52,12 +73,6 @@
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\anglesharp\AngleSharpBuilder\AngleSharpBuilder.csproj">
<Name>AngleSharpBuilder</Name>
<Private>False</Private>
<SetTargetFramework>TargetFramework=netcoreapp2.0</SetTargetFramework>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<Reference Include="..\anglesharp\AngleSharpBuilder\dist\Microsoft.AspNetCore.Blazor.AngleSharp.dll" />
</ItemGroup>
</Project>

View File

@ -10,6 +10,9 @@
<_BlazorAngleSharpAssemblyPath>$(MSBuildThisFileDirectory)../tools/Microsoft.AspNetCore.Blazor.AngleSharp.dll</_BlazorAngleSharpAssemblyPath>
<_BlazorExtensionAssemblyPath>$(MSBuildThisFileDirectory)../tools/Microsoft.AspNetCore.Blazor.Razor.Extensions.dll</_BlazorExtensionAssemblyPath>
<!-- Deactivates the Razor SDK's build-time compilation. We do our own -->
<RazorCompileOnBuild>false</RazorCompileOnBuild>
<RazorDefaultConfiguration>Blazor-0.1</RazorDefaultConfiguration>
</PropertyGroup>
@ -190,7 +193,8 @@
<!-- Include the temp assembly as a reference so we can discover components from the app.-->
<ItemGroup>
<_BlazorReferencePathWithRefAssemblies Include="@(ReferencePathWithRefAssemblies);@(_BlazorTempAssembly)"/>
<_BlazorReferencePathWithRefAssemblies Include="@(ReferencePathWithRefAssemblies)" />
<_BlazorReferencePathWithRefAssemblies Include="%(_BlazorTempAssembly.FullPath)" />
</ItemGroup>
<ItemGroup>

View File

@ -82,15 +82,21 @@ namespace Microsoft.AspNetCore.Blazor.Cli.Server
private static string FindClientBinDir(string clientAppSourceRoot)
{
var binDebugDir = Path.Combine(clientAppSourceRoot, "bin", "Debug");
var subdirectories = Directory.GetDirectories(binDebugDir);
// Our CI scripts will use Release
#if DEBUG
var binDir = Path.Combine(clientAppSourceRoot, "bin", "Debug");
#else
var binDir = Path.Combine(clientAppSourceRoot, "bin", "Release");
#endif
var subdirectories = Directory.GetDirectories(binDir);
if (subdirectories.Length != 1)
{
throw new InvalidOperationException($"Could not locate bin directory for Blazor app. " +
$"Expected to find exactly 1 subdirectory in '{binDebugDir}', but found {subdirectories.Length}.");
$"Expected to find exactly 1 subdirectory in '{binDir}', but found {subdirectories.Length}.");
}
return Path.Combine(binDebugDir, subdirectories[0]);
return Path.Combine(binDir, subdirectories[0]);
}
}
}

View File

@ -11,7 +11,11 @@
<PackageReference Include="Mono.Cecil" Version="0.10.0-beta7" />
</ItemGroup>
<Target Name="GenerateDist" AfterTargets="Build">
<Target
Name="GenerateDist"
AfterTargets="Build"
Inputs="$(MSBuildAllProjects);$(OutDir)$(AssemblyName).dll"
Outputs="$(MSBuildThisFileDirectory)dist\Microsoft.AspNetCore.Blazor.AngleSharp.dll">
<Exec WorkingDirectory="$(MSBuildThisFileDirectory)" Command="dotnet $(OutDir)$(AssemblyName).dll" />
</Target>

View File

@ -3,9 +3,11 @@
using AngleSharp.Parser.Html;
using Mono.Cecil;
using System;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Threading;
namespace AngleSharpBuilder
{
@ -28,9 +30,30 @@ namespace AngleSharpBuilder
{
public static void Main()
{
var outputDir = Path.Combine(Directory.GetCurrentDirectory(), "dist");
var inputAssembly = Assembly.GetAssembly(typeof(HtmlParser));
WriteModifiedAssembly(inputAssembly, outputDir);
// Prevent concurrent execution of this program. Since this is called by MSBuild
// make sure to wait for other instances to exit, we need the file to exist when
// this program exits.
using (var mutex = new Mutex(true, "AngleSharpBuilder", out var created))
{
if (created)
{
try
{
var outputDir = Path.Combine(Directory.GetCurrentDirectory(), "dist");
var inputAssembly = Assembly.GetAssembly(typeof(HtmlParser));
WriteModifiedAssembly(inputAssembly, outputDir);
}
finally
{
mutex.ReleaseMutex();
}
}
else
{
Console.WriteLine("Waiting for AngleSharpBuilder to exit...");
mutex.WaitOne(TimeSpan.FromSeconds(10));
}
}
}
private static void WriteModifiedAssembly(Assembly assembly, string outputDir)

View File

@ -1,8 +0,0 @@
<Project>
<ItemGroup>
<TestProject Include="*\*.csproj" />
</ItemGroup>
<Target Name="VSTest">
<MSBuild Projects="@(TestProject)" Targets="VSTest" ContinueOnError="ErrorAndContinue" />
</Target>
</Project>

View File

@ -47,7 +47,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -105,7 +105,7 @@ global::System.Object __typeHelper = ""*, TestAssembly"";
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
[Fact]
@ -132,7 +132,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -175,7 +175,7 @@ global::System.Object __typeHelper = ""*, TestAssembly"";
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
[Fact]
@ -201,7 +201,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -244,7 +244,7 @@ global::System.Object __typeHelper = ""*, TestAssembly"";
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
[Fact]
@ -280,7 +280,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -308,7 +308,7 @@ global::System.Object __typeHelper = ""*, TestAssembly"";
{
base.BuildRenderTree(builder);
__o = new Microsoft.AspNetCore.Blazor.UIEventHandler(eventArgs =>
__o = new Microsoft.AspNetCore.Blazor.UIEventHandler((eventArgs) =>
#line 2 ""x:\dir\subdir\Test\TestComponent.cshtml""
Increment()
@ -333,7 +333,7 @@ global::System.Object __typeHelper = ""*, TestAssembly"";
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
[Fact]
@ -370,7 +370,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -428,7 +428,7 @@ global::System.Object __typeHelper = ""*, TestAssembly"";
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim());
", generated);
}
[Fact]
@ -458,7 +458,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -494,7 +494,7 @@ global::System.Object __typeHelper = ""*, TestAssembly"";
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim());
", generated);
}
}
}

View File

@ -23,7 +23,6 @@
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\anglesharp\AngleSharpBuilder\AngleSharpBuilder.csproj" ReferenceOutputAssembly="false" />
<ProjectReference Include="..\..\src\Microsoft.AspNetCore.Blazor.Mono\Microsoft.AspNetCore.Blazor.Mono.csproj" />
<ProjectReference Include="..\..\src\Microsoft.AspNetCore.Blazor.Razor.Extensions\Microsoft.AspNetCore.Blazor.Razor.Extensions.csproj" />
<Reference Include="Microsoft.AspNetCore.Blazor.AngleSharp" HintPath="..\..\src\anglesharp\AngleSharpBuilder\dist\Microsoft.AspNetCore.Blazor.AngleSharp.dll" />

View File

@ -289,6 +289,19 @@ namespace Microsoft.AspNetCore.Blazor.Build.Test
return builder.GetFrames();
}
protected static void AssertSourceEquals(string expected, CompileToCSharpResult generated)
{
// Normalize the paths inside the expected result to match the OS paths
if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
{
var windowsPath = Path.Combine(ArbitraryWindowsPath, generated.CodeDocument.Source.RelativePath).Replace('/', '\\');
expected = expected.Replace(windowsPath, generated.CodeDocument.Source.FilePath);
}
expected = expected.Trim();
Assert.Equal(expected, generated.Code.Trim(), ignoreLineEndingDifferences: true);
}
protected class CompileToCSharpResult
{
// A compilation that can be used *with* this code to compile an assembly

View File

@ -33,7 +33,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -56,7 +56,7 @@ namespace Test
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
[Fact]
@ -94,7 +94,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -121,7 +121,7 @@ namespace Test
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
[Fact]
@ -148,7 +148,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -172,7 +172,7 @@ namespace Test
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
[Fact]
@ -198,7 +198,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -223,7 +223,7 @@ namespace Test
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
@ -260,7 +260,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -277,7 +277,7 @@ namespace Test
{
base.BuildRenderTree(builder);
builder.OpenComponent<Test.MyComponent>(0);
builder.AddAttribute(1, ""OnClick"", new Microsoft.AspNetCore.Blazor.UIEventHandler(eventArgs => Increment()));
builder.AddAttribute(1, ""OnClick"", new Microsoft.AspNetCore.Blazor.UIEventHandler((eventArgs) => Increment()));
builder.CloseComponent();
builder.AddContent(2, ""\n\n"");
}
@ -290,7 +290,7 @@ namespace Test
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim(), ignoreLineEndingDifferences: true);
", generated);
}
[Fact]
@ -327,7 +327,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -358,7 +358,7 @@ namespace Test
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim());
", generated);
}
[Fact]
@ -388,7 +388,7 @@ namespace Test
// Assert
CompileToAssembly(generated);
Assert.Equal(@"
AssertSourceEquals(@"
// <auto-generated/>
#pragma warning disable 1591
namespace Test
@ -420,7 +420,7 @@ namespace Test
}
}
#pragma warning restore 1591
".Trim(), generated.Code.Trim());
", generated);
}
}
}

View File

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk.Razor/2.1.0-preview2-30230;Microsoft.NET.Sdk.Web">
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>

View File

@ -1,4 +1,5 @@
<PropertiesChangedHandlerChild SuppliedValue=@valueToSupply />
@addTagHelper "*, BasicTestApp"
<PropertiesChangedHandlerChild SuppliedValue=@valueToSupply />
<button onclick=@{ valueToSupply++; }>Increment</button>
@functions {

View File

@ -15,12 +15,6 @@
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\anglesharp\AngleSharpBuilder\AngleSharpBuilder.csproj">
<Name>AngleSharpBuilder</Name>
<Private>False</Private>
<SetTargetFramework>TargetFramework=netcoreapp2.0</SetTargetFramework>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="..\..\src\Microsoft.AspNetCore.Blazor.Razor.Extensions\Microsoft.AspNetCore.Blazor.Razor.Extensions.csproj" />
</ItemGroup>
</Project>