Merge pull request #15542 from tamasvajk/feature/relative-line-pragma

C#: Try resolve relative paths in line mappings
This commit is contained in:
Tamás Vajk
2024-02-09 10:36:53 +01:00
committed by GitHub
33 changed files with 120 additions and 94 deletions

View File

@@ -1,5 +1,7 @@
using System;
using System.IO;
using Microsoft.CodeAnalysis;
using Semmle.Util.Logging;
namespace Semmle.Extraction.CSharp.Entities
{
@@ -25,7 +27,8 @@ namespace Semmle.Extraction.CSharp.Entities
var mapped = Symbol.GetMappedLineSpan();
if (mapped.HasMappedPath && mapped.IsValid)
{
var mappedLoc = Create(Context, Location.Create(mapped.Path, default, mapped.Span));
var path = TryAdjustRelativeMappedFilePath(mapped.Path, Position.Path, Context.Extractor.Logger);
var mappedLoc = Create(Context, Location.Create(path, default, mapped.Span));
trapFile.locations_mapped(this, mappedLoc);
}
@@ -61,5 +64,25 @@ namespace Semmle.Extraction.CSharp.Entities
public override NonGeneratedSourceLocation Create(Context cx, Location init) => new NonGeneratedSourceLocation(cx, init);
}
public static string TryAdjustRelativeMappedFilePath(string mappedToPath, string mappedFromPath, ILogger logger)
{
if (!Path.IsPathRooted(mappedToPath))
{
try
{
var fullPath = Path.GetFullPath(Path.Combine(Path.GetDirectoryName(mappedFromPath)!, mappedToPath));
logger.LogDebug($"Found relative path in line mapping: '{mappedToPath}', interpreting it as '{fullPath}'");
mappedToPath = fullPath;
}
catch (Exception e)
{
logger.LogDebug($"Failed to compute absolute path for relative path in line mapping: '{mappedToPath}': {e}");
}
}
return mappedToPath;
}
}
}

View File

@@ -25,9 +25,11 @@ namespace Semmle.Extraction.CSharp.Entities
{
trapFile.directive_lines(this, kind);
if (!string.IsNullOrWhiteSpace(Symbol.File.ValueText))
var path = Symbol.File.ValueText;
if (!string.IsNullOrWhiteSpace(path))
{
var file = File.Create(Context, Symbol.File.ValueText);
path = NonGeneratedSourceLocation.TryAdjustRelativeMappedFilePath(path, Symbol.SyntaxTree.FilePath, Context.Extractor.Logger);
var file = File.Create(Context, path);
trapFile.directive_line_file(this, file);
}
}

View File

@@ -12,7 +12,8 @@ namespace Semmle.Extraction.CSharp.Entities
protected override void PopulatePreprocessor(TextWriter trapFile)
{
var file = File.Create(Context, Symbol.File.ValueText);
var path = NonGeneratedSourceLocation.TryAdjustRelativeMappedFilePath(Symbol.File.ValueText, Symbol.SyntaxTree.FilePath, Context.Extractor.Logger);
var file = File.Create(Context, path);
trapFile.pragma_checksums(this, file, Symbol.Guid.ToString(), Symbol.Bytes.ToString());
}

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Areas/TestArea/Views/Shared/Test18.cshtml"
#line 6 "../Areas/TestArea/Views/Shared/Test18.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Areas/TestArea/Views/Shared/Test18.cshtml"
#line 8 "../Areas/TestArea/Views/Shared/Test18.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Areas/TestArea/Views/Shared/Test18.cshtml"
#line 9 "../Areas/TestArea/Views/Shared/Test18.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Areas/TestArea/Views/Test4/Test17.cshtml"
#line 6 "../Areas/TestArea/Views/Test4/Test17.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Areas/TestArea/Views/Test4/Test17.cshtml"
#line 8 "../Areas/TestArea/Views/Test4/Test17.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Areas/TestArea/Views/Test4/Test17.cshtml"
#line 9 "../Areas/TestArea/Views/Test4/Test17.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "MyAreas/Test4/Test22.cshtml"
#line 6 "../MyAreas/Test4/Test22.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "MyAreas/Test4/Test22.cshtml"
#line 8 "../MyAreas/Test4/Test22.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "MyAreas/Test4/Test22.cshtml"
#line 9 "../MyAreas/Test4/Test22.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Pages/Shared/Test21.cshtml"
#line 6 "../Pages/Shared/Test21.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Pages/Shared/Test21.cshtml"
#line 8 "../Pages/Shared/Test21.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Pages/Shared/Test21.cshtml"
#line 9 "../Pages/Shared/Test21.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "$PATHSLASH"
#line 6 "../$PATHSLASH"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "$PATHSLASH"
#line 8 "../$PATHSLASH"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "$PATHSLASH"
#line 9 "../$PATHSLASH"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Custom2/Test16.cshtml"
#line 6 "../Views/Custom2/Test16.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Custom2/Test16.cshtml"
#line 8 "../Views/Custom2/Test16.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Custom2/Test16.cshtml"
#line 9 "../Views/Custom2/Test16.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Custom/Test3/Test15.cshtml"
#line 6 "../Views/Custom/Test3/Test15.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Custom/Test3/Test15.cshtml"
#line 8 "../Views/Custom/Test3/Test15.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Custom/Test3/Test15.cshtml"
#line 9 "../Views/Custom/Test3/Test15.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Other/Test13.cshtml"
#line 6 "../Views/Other/Test13.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Other/Test13.cshtml"
#line 8 "../Views/Other/Test13.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Other/Test13.cshtml"
#line 9 "../Views/Other/Test13.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Other/Test5.cshtml"
#line 6 "../Views/Other/Test5.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Other/Test5.cshtml"
#line 8 "../Views/Other/Test5.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Other/Test5.cshtml"
#line 9 "../Views/Other/Test5.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Other/Test6.cshtml"
#line 6 "../Views/Other/Test6.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Other/Test6.cshtml"
#line 8 "../Views/Other/Test6.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Other/Test6.cshtml"
#line 9 "../Views/Other/Test6.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Other/Test8.cshtml"
#line 6 "../Views/Other/Test8.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Other/Test8.cshtml"
#line 8 "../Views/Other/Test8.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Other/Test8.cshtml"
#line 9 "../Views/Other/Test8.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Other/Test9.cshtml"
#line 6 "../Views/Other/Test9.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Other/Test9.cshtml"
#line 8 "../Views/Other/Test9.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Other/Test9.cshtml"
#line 9 "../Views/Other/Test9.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Shared/Test12.cshtml"
#line 6 "../Views/Shared/Test12.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Shared/Test12.cshtml"
#line 8 "../Views/Shared/Test12.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Shared/Test12.cshtml"
#line 9 "../Views/Shared/Test12.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Shared/Test14.cshtml"
#line 6 "../Views/Shared/Test14.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Shared/Test14.cshtml"
#line 8 "../Views/Shared/Test14.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Shared/Test14.cshtml"
#line 9 "../Views/Shared/Test14.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Shared/Test19.cshtml"
#line 6 "../Views/Shared/Test19.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Shared/Test19.cshtml"
#line 8 "../Views/Shared/Test19.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Shared/Test19.cshtml"
#line 9 "../Views/Shared/Test19.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Shared/Test2.cshtml"
#line 6 "../Views/Shared/Test2.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Shared/Test2.cshtml"
#line 8 "../Views/Shared/Test2.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Shared/Test2.cshtml"
#line 9 "../Views/Shared/Test2.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Shared/Test23.cshtml"
#line 6 "../Views/Shared/Test23.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Shared/Test23.cshtml"
#line 8 "../Views/Shared/Test23.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Shared/Test23.cshtml"
#line 9 "../Views/Shared/Test23.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Shared/Test3.cshtml"
#line 6 "../Views/Shared/Test3.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Shared/Test3.cshtml"
#line 8 "../Views/Shared/Test3.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Shared/Test3.cshtml"
#line 9 "../Views/Shared/Test3.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test2/Test1.cshtml"
#line 6 "../Views/Test2/Test1.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test2/Test1.cshtml"
#line 8 "../Views/Test2/Test1.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test2/Test1.cshtml"
#line 9 "../Views/Test2/Test1.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test2/Test10.cshtml"
#line 6 "../Views/Test2/Test10.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test2/Test10.cshtml"
#line 8 "../Views/Test2/Test10.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test2/Test10.cshtml"
#line 9 "../Views/Test2/Test10.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test2/Test11.cshtml"
#line 6 "../Views/Test2/Test11.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test2/Test11.cshtml"
#line 8 "../Views/Test2/Test11.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test2/Test11.cshtml"
#line 9 "../Views/Test2/Test11.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test2/Test12.cshtml"
#line 6 "../Views/Test2/Test12.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test2/Test12.cshtml"
#line 8 "../Views/Test2/Test12.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test2/Test12.cshtml"
#line 9 "../Views/Test2/Test12.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test2/Test14.cshtml"
#line 6 "../Views/Test2/Test14.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test2/Test14.cshtml"
#line 8 "../Views/Test2/Test14.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test2/Test14.cshtml"
#line 9 "../Views/Test2/Test14.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test2/Test2.cshtml"
#line 6 "../Views/Test2/Test2.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test2/Test2.cshtml"
#line 8 "../Views/Test2/Test2.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test2/Test2.cshtml"
#line 9 "../Views/Test2/Test2.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test2/Test3.cshtml"
#line 6 "../Views/Test2/Test3.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test2/Test3.cshtml"
#line 8 "../Views/Test2/Test3.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test2/Test3.cshtml"
#line 9 "../Views/Test2/Test3.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test4/Test20.cshtml"
#line 6 "../Views/Test4/Test20.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test4/Test20.cshtml"
#line 8 "../Views/Test4/Test20.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test4/Test20.cshtml"
#line 9 "../Views/Test4/Test20.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test/Test1.cshtml"
#line 6 "../Views/Test/Test1.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test/Test1.cshtml"
#line 8 "../Views/Test/Test1.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test/Test1.cshtml"
#line 9 "../Views/Test/Test1.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test/Test3.cshtml"
#line 6 "../Views/Test/Test3.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test/Test3.cshtml"
#line 8 "../Views/Test/Test3.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test/Test3.cshtml"
#line 9 "../Views/Test/Test3.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test/Test4.cshtml"
#line 6 "../Views/Test/Test4.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test/Test4.cshtml"
#line 8 "../Views/Test/Test4.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test/Test4.cshtml"
#line 9 "../Views/Test/Test4.cshtml"
}
#line default

View File

@@ -24,7 +24,7 @@ using test;
#pragma warning disable 1998
public async override global::System.Threading.Tasks.Task ExecuteAsync()
{
#line 6 "Views/Test/Test7.cshtml"
#line 6 "../Views/Test/Test7.cshtml"
if (Model != null)
{
@@ -33,7 +33,7 @@ using test;
#nullable disable
WriteLiteral(" <h3>Hello \"");
#nullable restore
#line 8 "Views/Test/Test7.cshtml"
#line 8 "../Views/Test/Test7.cshtml"
Write(Html.Raw(Model.Name));
#line default
@@ -41,7 +41,7 @@ Write(Html.Raw(Model.Name));
#nullable disable
WriteLiteral("\"</h3>\n");
#nullable restore
#line 9 "Views/Test/Test7.cshtml"
#line 9 "../Views/Test/Test7.cshtml"
}
#line default