Upgrade Razor's Roslyn dependency to 2.0.0.
- Added C# 7 test to validate questionable features work end-to-end. - Had to add several explicit package references to let our VS specific packages work as expected. #1046
This commit is contained in:
parent
c25aadf599
commit
1696e2aebf
|
|
@ -8,7 +8,7 @@
|
|||
<JsonNetVersion>10.0.1</JsonNetVersion>
|
||||
<MoqVersion>4.7.1</MoqVersion>
|
||||
<NetStandardImplicitPackageVersion>1.6.1</NetStandardImplicitPackageVersion>
|
||||
<RoslynVersion>1.3.0</RoslynVersion>
|
||||
<RoslynVersion>2.0.0</RoslynVersion>
|
||||
<RoslynDevVersion>2.0.0-rc5-61501-05</RoslynDevVersion>
|
||||
<RuntimeFrameworkVersion>2.0.0-*</RuntimeFrameworkVersion>
|
||||
<TestSdkVersion>15.0.0</TestSdkVersion>
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@
|
|||
<Compile Include="..\Microsoft.VisualStudio.LanguageServices.Razor\RazorDiagnosticJsonConverter.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Common" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Remote.Razor.ServiceHub" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="StreamJsonRpc" Version="1.0.2-rc" />
|
||||
|
|
|
|||
|
|
@ -19,6 +19,8 @@
|
|||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Common" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.EditorFeatures.Text" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="Microsoft.VisualStudio.LanguageServices" Version="$(RoslynDevVersion)" />
|
||||
|
|
|
|||
|
|
@ -9,6 +9,21 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
|
|||
public class CodeGenerationIntegrationTest : IntegrationTestBase
|
||||
{
|
||||
#region Runtime
|
||||
[Fact]
|
||||
public void CSharp7_Runtime()
|
||||
{
|
||||
// Arrange
|
||||
var engine = RazorEngine.Create(builder => builder.Features.Add(new ApiSetsIRTestAdapter()));
|
||||
var document = CreateCodeDocument();
|
||||
|
||||
// Act
|
||||
engine.Process(document);
|
||||
|
||||
// Assert
|
||||
AssertIRMatchesBaseline(document.GetIRDocument());
|
||||
AssertCSharpDocumentMatchesBaseline(document.GetCSharpDocument());
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void BasicImports_Runtime()
|
||||
{
|
||||
|
|
@ -778,6 +793,21 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
|
|||
#endregion
|
||||
|
||||
#region DesignTime
|
||||
[Fact]
|
||||
public void CSharp7_DesignTime()
|
||||
{
|
||||
// Arrange
|
||||
var engine = RazorEngine.CreateDesignTime(builder => builder.Features.Add(new ApiSetsIRTestAdapter()));
|
||||
var document = CreateCodeDocument();
|
||||
|
||||
// Act
|
||||
engine.Process(document);
|
||||
|
||||
// Assert
|
||||
AssertIRMatchesBaseline(document.GetIRDocument());
|
||||
AssertDesignTimeDocumentMatchBaseline(document);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void BasicImports_DesignTime()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -0,0 +1,43 @@
|
|||
<body>
|
||||
@{
|
||||
var nameLookup = new Dictionary<string, (string FirstName, string LastName, object Extra)>()
|
||||
{
|
||||
["John Doe"] = ("John", "Doe", true)
|
||||
};
|
||||
|
||||
@* This is all C# 7 bits that should work. *@
|
||||
|
||||
int Sixteen = 0b0001_0000;
|
||||
long BillionsAndBillions = 100_000_000_000;
|
||||
double AvogadroConstant = 6.022_140_857_747_474e23;
|
||||
decimal GoldenRatio = 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M;
|
||||
}
|
||||
|
||||
@if (nameLookup.TryGetValue("John Doe", out var entry))
|
||||
{
|
||||
if (entry.Extra is bool alive)
|
||||
{
|
||||
// Do Something
|
||||
}
|
||||
}
|
||||
<p>
|
||||
Here's a very unique number: @(1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M)
|
||||
</p>
|
||||
|
||||
<div>
|
||||
@((First: "John", Last: "Doe").First) @* Value Tuples *@
|
||||
</div>
|
||||
|
||||
@switch (entry.Extra)
|
||||
{
|
||||
case int age:
|
||||
// Do something
|
||||
break;
|
||||
case IEnumerable<string> childrenNames:
|
||||
// Do more something
|
||||
break;
|
||||
case null:
|
||||
// Do even more of something
|
||||
break;
|
||||
}
|
||||
</body>
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
{
|
||||
#line hidden
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
public class TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CSharp7_DesignTime
|
||||
{
|
||||
#pragma warning disable 219
|
||||
private void __RazorDirectiveTokenHelpers__() {
|
||||
}
|
||||
#pragma warning restore 219
|
||||
private static System.Object __o = null;
|
||||
#pragma warning disable 1998
|
||||
public async System.Threading.Tasks.Task ExecuteAsync()
|
||||
{
|
||||
#line 2 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
|
||||
var nameLookup = new Dictionary<string, (string FirstName, string LastName, object Extra)>()
|
||||
{
|
||||
["John Doe"] = ("John", "Doe", true)
|
||||
};
|
||||
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#line 8 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
|
||||
|
||||
int Sixteen = 0b0001_0000;
|
||||
long BillionsAndBillions = 100_000_000_000;
|
||||
double AvogadroConstant = 6.022_140_857_747_474e23;
|
||||
decimal GoldenRatio = 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M;
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#line 16 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
if (nameLookup.TryGetValue("John Doe", out var entry))
|
||||
{
|
||||
if (entry.Extra is bool alive)
|
||||
{
|
||||
// Do Something
|
||||
}
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#line 24 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
__o = 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#line 28 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
__o = (First: "John", Last: "Doe").First;
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#line 31 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
switch (entry.Extra)
|
||||
{
|
||||
case int age:
|
||||
// Do something
|
||||
break;
|
||||
case IEnumerable<string> childrenNames:
|
||||
// Do more something
|
||||
break;
|
||||
case null:
|
||||
// Do even more of something
|
||||
break;
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
UsingStatement - - System
|
||||
UsingStatement - - System.Threading.Tasks
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CSharp7_DesignTime - -
|
||||
DirectiveTokenHelper -
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - #pragma warning disable 219
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - private void __RazorDirectiveTokenHelpers__() {
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - }
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - #pragma warning restore 219
|
||||
CSharpStatement -
|
||||
RazorIRToken - - CSharp - private static System.Object __o = null;
|
||||
RazorMethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
HtmlContent - (0:0,0 [12] CSharp7.cshtml)
|
||||
RazorIRToken - (0:0,0 [6] CSharp7.cshtml) - Html - <body>
|
||||
RazorIRToken - (6:0,6 [6] CSharp7.cshtml) - Html - \n
|
||||
CSharpStatement - (14:1,6 [187] CSharp7.cshtml)
|
||||
RazorIRToken - (14:1,6 [187] CSharp7.cshtml) - CSharp - \n var nameLookup = new Dictionary<string, (string FirstName, string LastName, object Extra)>()\n {\n ["John Doe"] = ("John", "Doe", true)\n };\n\n
|
||||
CSharpStatement - (246:7,53 [253] CSharp7.cshtml)
|
||||
RazorIRToken - (246:7,53 [253] CSharp7.cshtml) - CSharp - \n\n int Sixteen = 0b0001_0000;\n long BillionsAndBillions = 100_000_000_000;\n double AvogadroConstant = 6.022_140_857_747_474e23;\n decimal GoldenRatio = 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M;\n
|
||||
HtmlContent - (502:14,0 [6] CSharp7.cshtml)
|
||||
RazorIRToken - (502:14,0 [6] CSharp7.cshtml) - Html - \n
|
||||
CSharpStatement - (509:15,5 [159] CSharp7.cshtml)
|
||||
RazorIRToken - (509:15,5 [159] CSharp7.cshtml) - CSharp - if (nameLookup.TryGetValue("John Doe", out var entry))\n {\n if (entry.Extra is bool alive)\n {\n // Do Something\n }\n }
|
||||
HtmlContent - (668:21,5 [48] CSharp7.cshtml)
|
||||
RazorIRToken - (668:21,5 [6] CSharp7.cshtml) - Html - \n
|
||||
RazorIRToken - (674:22,4 [3] CSharp7.cshtml) - Html - <p>
|
||||
RazorIRToken - (677:22,7 [39] CSharp7.cshtml) - Html - \n Here's a very unique number:
|
||||
CSharpExpression - (718:23,39 [62] CSharp7.cshtml)
|
||||
RazorIRToken - (718:23,39 [62] CSharp7.cshtml) - CSharp - 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M
|
||||
HtmlContent - (781:23,102 [33] CSharp7.cshtml)
|
||||
RazorIRToken - (781:23,102 [6] CSharp7.cshtml) - Html - \n
|
||||
RazorIRToken - (787:24,4 [4] CSharp7.cshtml) - Html - </p>
|
||||
RazorIRToken - (791:24,8 [8] CSharp7.cshtml) - Html - \n\n
|
||||
RazorIRToken - (799:26,4 [5] CSharp7.cshtml) - Html - <div>
|
||||
RazorIRToken - (804:26,9 [10] CSharp7.cshtml) - Html - \n
|
||||
CSharpExpression - (816:27,10 [34] CSharp7.cshtml)
|
||||
RazorIRToken - (816:27,10 [34] CSharp7.cshtml) - CSharp - (First: "John", Last: "Doe").First
|
||||
HtmlContent - (872:28,0 [18] CSharp7.cshtml)
|
||||
RazorIRToken - (872:28,0 [4] CSharp7.cshtml) - Html -
|
||||
RazorIRToken - (876:28,4 [6] CSharp7.cshtml) - Html - </div>
|
||||
RazorIRToken - (882:28,10 [8] CSharp7.cshtml) - Html - \n\n
|
||||
CSharpStatement - (891:30,5 [291] CSharp7.cshtml)
|
||||
RazorIRToken - (891:30,5 [291] CSharp7.cshtml) - CSharp - switch (entry.Extra)\n {\n case int age:\n // Do something\n break;\n case IEnumerable<string> childrenNames:\n // Do more something\n break;\n case null:\n // Do even more of something\n break;\n }
|
||||
HtmlContent - (1182:41,5 [9] CSharp7.cshtml)
|
||||
RazorIRToken - (1182:41,5 [2] CSharp7.cshtml) - Html - \n
|
||||
RazorIRToken - (1184:42,0 [7] CSharp7.cshtml) - Html - </body>
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
Source Location: (14:1,6 [187] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml)
|
||||
|
|
||||
var nameLookup = new Dictionary<string, (string FirstName, string LastName, object Extra)>()
|
||||
{
|
||||
["John Doe"] = ("John", "Doe", true)
|
||||
};
|
||||
|
||||
|
|
||||
Generated Location: (645:16,6 [187] )
|
||||
|
|
||||
var nameLookup = new Dictionary<string, (string FirstName, string LastName, object Extra)>()
|
||||
{
|
||||
["John Doe"] = ("John", "Doe", true)
|
||||
};
|
||||
|
||||
|
|
||||
|
||||
Source Location: (246:7,53 [253] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml)
|
||||
|
|
||||
|
||||
int Sixteen = 0b0001_0000;
|
||||
long BillionsAndBillions = 100_000_000_000;
|
||||
double AvogadroConstant = 6.022_140_857_747_474e23;
|
||||
decimal GoldenRatio = 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M;
|
||||
|
|
||||
Generated Location: (1001:27,53 [253] )
|
||||
|
|
||||
|
||||
int Sixteen = 0b0001_0000;
|
||||
long BillionsAndBillions = 100_000_000_000;
|
||||
double AvogadroConstant = 6.022_140_857_747_474e23;
|
||||
decimal GoldenRatio = 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M;
|
||||
|
|
||||
|
||||
Source Location: (509:15,5 [159] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml)
|
||||
|if (nameLookup.TryGetValue("John Doe", out var entry))
|
||||
{
|
||||
if (entry.Extra is bool alive)
|
||||
{
|
||||
// Do Something
|
||||
}
|
||||
}|
|
||||
Generated Location: (1376:38,5 [159] )
|
||||
|if (nameLookup.TryGetValue("John Doe", out var entry))
|
||||
{
|
||||
if (entry.Extra is bool alive)
|
||||
{
|
||||
// Do Something
|
||||
}
|
||||
}|
|
||||
|
||||
Source Location: (718:23,39 [62] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml)
|
||||
|1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M|
|
||||
Generated Location: (1691:49,39 [62] )
|
||||
|1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M|
|
||||
|
||||
Source Location: (816:27,10 [34] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml)
|
||||
|(First: "John", Last: "Doe").First|
|
||||
Generated Location: (1881:54,10 [34] )
|
||||
|(First: "John", Last: "Doe").First|
|
||||
|
||||
Source Location: (891:30,5 [291] TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml)
|
||||
|switch (entry.Extra)
|
||||
{
|
||||
case int age:
|
||||
// Do something
|
||||
break;
|
||||
case IEnumerable<string> childrenNames:
|
||||
// Do more something
|
||||
break;
|
||||
case null:
|
||||
// Do even more of something
|
||||
break;
|
||||
}|
|
||||
Generated Location: (2038:59,5 [291] )
|
||||
|switch (entry.Extra)
|
||||
{
|
||||
case int age:
|
||||
// Do something
|
||||
break;
|
||||
case IEnumerable<string> childrenNames:
|
||||
// Do more something
|
||||
break;
|
||||
case null:
|
||||
// Do even more of something
|
||||
break;
|
||||
}|
|
||||
|
||||
|
|
@ -0,0 +1,81 @@
|
|||
#pragma checksum "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "d287720a0df9d4595ed4f009c44479d9c7b0a800"
|
||||
namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
{
|
||||
#line hidden
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
public class TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CSharp7_Runtime
|
||||
{
|
||||
#pragma warning disable 1998
|
||||
public async System.Threading.Tasks.Task ExecuteAsync()
|
||||
{
|
||||
WriteLiteral("<body>\r\n");
|
||||
#line 2 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
|
||||
var nameLookup = new Dictionary<string, (string FirstName, string LastName, object Extra)>()
|
||||
{
|
||||
["John Doe"] = ("John", "Doe", true)
|
||||
};
|
||||
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
#line 8 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
|
||||
|
||||
int Sixteen = 0b0001_0000;
|
||||
long BillionsAndBillions = 100_000_000_000;
|
||||
double AvogadroConstant = 6.022_140_857_747_474e23;
|
||||
decimal GoldenRatio = 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M;
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
WriteLiteral("\r\n");
|
||||
#line 16 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
if (nameLookup.TryGetValue("John Doe", out var entry))
|
||||
{
|
||||
if (entry.Extra is bool alive)
|
||||
{
|
||||
// Do Something
|
||||
}
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
WriteLiteral(" <p>\r\n Here\'s a very unique number: ");
|
||||
#line 24 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
Write(1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
WriteLiteral("\r\n </p>\r\n\r\n <div>\r\n ");
|
||||
#line 28 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
Write((First: "John", Last: "Doe").First);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
WriteLiteral(" ");
|
||||
WriteLiteral("\r\n </div>\r\n\r\n");
|
||||
#line 31 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7.cshtml"
|
||||
switch (entry.Extra)
|
||||
{
|
||||
case int age:
|
||||
// Do something
|
||||
break;
|
||||
case IEnumerable<string> childrenNames:
|
||||
// Do more something
|
||||
break;
|
||||
case null:
|
||||
// Do even more of something
|
||||
break;
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
WriteLiteral("</body>");
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
Document -
|
||||
Checksum -
|
||||
NamespaceDeclaration - - Microsoft.AspNetCore.Razor.Language.IntegrationTests.TestFiles
|
||||
UsingStatement - - System
|
||||
UsingStatement - - System.Threading.Tasks
|
||||
ClassDeclaration - - public - TestFiles_IntegrationTests_CodeGenerationIntegrationTest_CSharp7_Runtime - -
|
||||
RazorMethodDeclaration - - public - async - System.Threading.Tasks.Task - ExecuteAsync
|
||||
HtmlContent - (0:0,0 [8] CSharp7.cshtml)
|
||||
RazorIRToken - (0:0,0 [6] CSharp7.cshtml) - Html - <body>
|
||||
RazorIRToken - (6:0,6 [2] CSharp7.cshtml) - Html - \n
|
||||
CSharpStatement - (8:1,0 [4] CSharp7.cshtml)
|
||||
RazorIRToken - (8:1,0 [4] CSharp7.cshtml) - CSharp -
|
||||
CSharpStatement - (14:1,6 [187] CSharp7.cshtml)
|
||||
RazorIRToken - (14:1,6 [187] CSharp7.cshtml) - CSharp - \n var nameLookup = new Dictionary<string, (string FirstName, string LastName, object Extra)>()\n {\n ["John Doe"] = ("John", "Doe", true)\n };\n\n
|
||||
CSharpStatement - (246:7,53 [253] CSharp7.cshtml)
|
||||
RazorIRToken - (246:7,53 [253] CSharp7.cshtml) - CSharp - \n\n int Sixteen = 0b0001_0000;\n long BillionsAndBillions = 100_000_000_000;\n double AvogadroConstant = 6.022_140_857_747_474e23;\n decimal GoldenRatio = 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M;\n
|
||||
HtmlContent - (502:14,0 [2] CSharp7.cshtml)
|
||||
RazorIRToken - (502:14,0 [2] CSharp7.cshtml) - Html - \n
|
||||
CSharpStatement - (504:15,0 [4] CSharp7.cshtml)
|
||||
RazorIRToken - (504:15,0 [4] CSharp7.cshtml) - CSharp -
|
||||
CSharpStatement - (509:15,5 [161] CSharp7.cshtml)
|
||||
RazorIRToken - (509:15,5 [161] CSharp7.cshtml) - CSharp - if (nameLookup.TryGetValue("John Doe", out var entry))\n {\n if (entry.Extra is bool alive)\n {\n // Do Something\n }\n }\n
|
||||
HtmlContent - (670:22,0 [46] CSharp7.cshtml)
|
||||
RazorIRToken - (670:22,0 [4] CSharp7.cshtml) - Html -
|
||||
RazorIRToken - (674:22,4 [3] CSharp7.cshtml) - Html - <p>
|
||||
RazorIRToken - (677:22,7 [39] CSharp7.cshtml) - Html - \n Here's a very unique number:
|
||||
CSharpExpression - (718:23,39 [62] CSharp7.cshtml)
|
||||
RazorIRToken - (718:23,39 [62] CSharp7.cshtml) - CSharp - 1.618_033_988_749_894_848_204_586_834_365_638_117_720_309_179M
|
||||
HtmlContent - (781:23,102 [33] CSharp7.cshtml)
|
||||
RazorIRToken - (781:23,102 [6] CSharp7.cshtml) - Html - \n
|
||||
RazorIRToken - (787:24,4 [4] CSharp7.cshtml) - Html - </p>
|
||||
RazorIRToken - (791:24,8 [8] CSharp7.cshtml) - Html - \n\n
|
||||
RazorIRToken - (799:26,4 [5] CSharp7.cshtml) - Html - <div>
|
||||
RazorIRToken - (804:26,9 [2] CSharp7.cshtml) - Html - \n
|
||||
RazorIRToken - (806:27,0 [8] CSharp7.cshtml) - Html -
|
||||
CSharpExpression - (816:27,10 [34] CSharp7.cshtml)
|
||||
RazorIRToken - (816:27,10 [34] CSharp7.cshtml) - CSharp - (First: "John", Last: "Doe").First
|
||||
HtmlContent - (851:27,45 [1] CSharp7.cshtml)
|
||||
RazorIRToken - (851:27,45 [1] CSharp7.cshtml) - Html -
|
||||
HtmlContent - (870:27,64 [16] CSharp7.cshtml)
|
||||
RazorIRToken - (870:27,64 [6] CSharp7.cshtml) - Html - \n
|
||||
RazorIRToken - (876:28,4 [6] CSharp7.cshtml) - Html - </div>
|
||||
RazorIRToken - (882:28,10 [4] CSharp7.cshtml) - Html - \n\n
|
||||
CSharpStatement - (886:30,0 [4] CSharp7.cshtml)
|
||||
RazorIRToken - (886:30,0 [4] CSharp7.cshtml) - CSharp -
|
||||
CSharpStatement - (891:30,5 [293] CSharp7.cshtml)
|
||||
RazorIRToken - (891:30,5 [293] CSharp7.cshtml) - CSharp - switch (entry.Extra)\n {\n case int age:\n // Do something\n break;\n case IEnumerable<string> childrenNames:\n // Do more something\n break;\n case null:\n // Do even more of something\n break;\n }\n
|
||||
HtmlContent - (1184:42,0 [7] CSharp7.cshtml)
|
||||
RazorIRToken - (1184:42,0 [7] CSharp7.cshtml) - Html - </body>
|
||||
|
|
@ -26,6 +26,7 @@
|
|||
<ProjectReference Include="..\..\src\Microsoft.AspNetCore.Razor.Language\Microsoft.AspNetCore.Razor.Language.csproj" />
|
||||
<ProjectReference Include="..\..\src\Microsoft.AspNetCore.Razor.Runtime\Microsoft.AspNetCore.Razor.Runtime.csproj" />
|
||||
<ProjectReference Include="..\..\src\Microsoft.AspNetCore.Razor\Microsoft.AspNetCore.Razor.csproj" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Common" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="$(RoslynDevVersion)" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="$(DependencyModelVersion)" />
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="$(TestSdkVersion)" />
|
||||
|
|
|
|||
Loading…
Reference in New Issue