Rely on Razors MalformedDirective identification for @page.
aspnet/Razor#1448
This commit is contained in:
parent
b9541be20d
commit
7454c53047
|
|
@ -50,20 +50,16 @@ namespace Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure
|
||||||
var documentIRNode = codeDocument.GetDocumentIntermediateNode();
|
var documentIRNode = codeDocument.GetDocumentIntermediateNode();
|
||||||
if (PageDirective.TryGetPageDirective(documentIRNode, out var pageDirective))
|
if (PageDirective.TryGetPageDirective(documentIRNode, out var pageDirective))
|
||||||
{
|
{
|
||||||
|
if (pageDirective.DirectiveNode is MalformedDirectiveIntermediateNode malformedNode)
|
||||||
|
{
|
||||||
|
logger.MalformedPageDirective(sourceDocument.FilePath, malformedNode.Diagnostics);
|
||||||
|
}
|
||||||
|
|
||||||
template = pageDirective.RouteTemplate;
|
template = pageDirective.RouteTemplate;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
template = null;
|
template = null;
|
||||||
|
|
||||||
var visitor = new Visitor();
|
|
||||||
visitor.Visit(documentIRNode);
|
|
||||||
if (visitor.MalformedPageDirective != null)
|
|
||||||
{
|
|
||||||
logger.MalformedPageDirective(sourceDocument.FilePath, visitor.MalformedPageDirective.Diagnostics);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -76,18 +72,5 @@ namespace Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure
|
||||||
options.ParseOnlyLeadingDirectives = true;
|
options.ParseOnlyLeadingDirectives = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private class Visitor : IntermediateNodeWalker
|
|
||||||
{
|
|
||||||
public MalformedDirectiveIntermediateNode MalformedPageDirective { get; private set; }
|
|
||||||
|
|
||||||
public override void VisitMalformedDirective(MalformedDirectiveIntermediateNode node)
|
|
||||||
{
|
|
||||||
if (node.Descriptor == PageDirective.Directive)
|
|
||||||
{
|
|
||||||
MalformedPageDirective = node;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue