parent
50fa3ee3e3
commit
c3b51cbbdf
|
|
@ -0,0 +1,142 @@
|
|||
// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using Microsoft.AspNet.Razor.Parser;
|
||||
using Microsoft.AspNet.Razor.Parser.TagHelpers.Internal;
|
||||
using Microsoft.AspNet.Razor.TagHelpers;
|
||||
using Moq;
|
||||
using Xunit;
|
||||
|
||||
namespace Microsoft.AspNet.Razor.Test.Generator
|
||||
{
|
||||
public class CSharpTagHelperRenderingTest : CSharpRazorCodeGeneratorTest
|
||||
{
|
||||
[Theory]
|
||||
[InlineData("TagHelpersInSection")]
|
||||
[InlineData("TagHelpersInHelper")]
|
||||
public void TagHelpers_WithinHelpersAndSections_GeneratesExpectedOutput(string testType)
|
||||
{
|
||||
// Arrange
|
||||
var propertyInfoMock = new Mock<PropertyInfo>();
|
||||
propertyInfoMock.Setup(propertyInfo => propertyInfo.PropertyType).Returns(typeof(string));
|
||||
propertyInfoMock.Setup(propertyInfo => propertyInfo.Name).Returns("BoundProperty");
|
||||
var tagHelperDescriptorProvider = new TagHelperDescriptorProvider(
|
||||
new TagHelperDescriptor[]
|
||||
{
|
||||
new TagHelperDescriptor("MyTagHelper",
|
||||
"MyTagHelper",
|
||||
ContentBehavior.None,
|
||||
new [] {
|
||||
new TagHelperAttributeDescriptor("BoundProperty",
|
||||
propertyInfoMock.Object)
|
||||
}),
|
||||
new TagHelperDescriptor("NestedTagHelper", "NestedTagHelper", ContentBehavior.Modify)
|
||||
});
|
||||
|
||||
// Act & Assert
|
||||
RunTagHelperTest(testType, tagHelperDescriptorProvider);
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("SingleTagHelper")]
|
||||
[InlineData("BasicTagHelpers")]
|
||||
[InlineData("ComplexTagHelpers")]
|
||||
public void TagHelpers_GenerateExpectedOutput(string testType)
|
||||
{
|
||||
// Arrange
|
||||
var pFooPropertyInfo = new Mock<PropertyInfo>();
|
||||
pFooPropertyInfo.Setup(propertyInfo => propertyInfo.PropertyType).Returns(typeof(int));
|
||||
pFooPropertyInfo.Setup(propertyInfo => propertyInfo.Name).Returns("Foo");
|
||||
var inputTypePropertyInfo = new Mock<PropertyInfo>();
|
||||
inputTypePropertyInfo.Setup(propertyInfo => propertyInfo.PropertyType).Returns(typeof(string));
|
||||
inputTypePropertyInfo.Setup(propertyInfo => propertyInfo.Name).Returns("Type");
|
||||
var checkedPropertyInfo = new Mock<PropertyInfo>();
|
||||
checkedPropertyInfo.Setup(propertyInfo => propertyInfo.PropertyType).Returns(typeof(bool));
|
||||
checkedPropertyInfo.Setup(propertyInfo => propertyInfo.Name).Returns("Checked");
|
||||
var tagHelperDescriptorProvider = new TagHelperDescriptorProvider(
|
||||
new TagHelperDescriptor[]
|
||||
{
|
||||
new TagHelperDescriptor("p",
|
||||
"PTagHelper",
|
||||
ContentBehavior.None,
|
||||
new [] {
|
||||
new TagHelperAttributeDescriptor("foo", pFooPropertyInfo.Object)
|
||||
}),
|
||||
new TagHelperDescriptor("input",
|
||||
"InputTagHelper",
|
||||
ContentBehavior.None,
|
||||
new TagHelperAttributeDescriptor[] {
|
||||
new TagHelperAttributeDescriptor("type", inputTypePropertyInfo.Object)
|
||||
}),
|
||||
new TagHelperDescriptor("input",
|
||||
"InputTagHelper2",
|
||||
ContentBehavior.None,
|
||||
new TagHelperAttributeDescriptor[] {
|
||||
new TagHelperAttributeDescriptor("type", inputTypePropertyInfo.Object),
|
||||
new TagHelperAttributeDescriptor("checked", checkedPropertyInfo.Object)
|
||||
}),
|
||||
});
|
||||
|
||||
// Act & Assert
|
||||
RunTagHelperTest(testType, tagHelperDescriptorProvider);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void TagHelpers_WithContentBehaviors_GenerateExpectedOutput()
|
||||
{
|
||||
// Arrange
|
||||
var tagHelperDescriptorProvider = new TagHelperDescriptorProvider(
|
||||
new TagHelperDescriptor[]
|
||||
{
|
||||
new TagHelperDescriptor("modify", "ModifyTagHelper", ContentBehavior.Modify),
|
||||
new TagHelperDescriptor("none", "NoneTagHelper", ContentBehavior.None),
|
||||
new TagHelperDescriptor("append", "AppendTagHelper", ContentBehavior.Append),
|
||||
new TagHelperDescriptor("prepend", "PrependTagHelper", ContentBehavior.Prepend),
|
||||
new TagHelperDescriptor("replace", "ReplaceTagHelper", ContentBehavior.Replace),
|
||||
});
|
||||
|
||||
// Act & Assert
|
||||
RunTagHelperTest("ContentBehaviorTagHelpers", tagHelperDescriptorProvider);
|
||||
}
|
||||
|
||||
private void RunTagHelperTest(string testName, TagHelperDescriptorProvider tagHelperDescriptorProvider)
|
||||
{
|
||||
RunTest(
|
||||
name: testName,
|
||||
templateEngineConfig: (engine) =>
|
||||
{
|
||||
return new TagHelperTemplateEngine(engine, tagHelperDescriptorProvider);
|
||||
});
|
||||
}
|
||||
|
||||
private class TagHelperTemplateEngine : RazorTemplateEngine
|
||||
{
|
||||
private TagHelperDescriptorProvider _tagHelperDescriptorProvider;
|
||||
|
||||
public TagHelperTemplateEngine(RazorTemplateEngine engine, TagHelperDescriptorProvider tagHelperDescriptorProvider)
|
||||
: base(engine.Host)
|
||||
{
|
||||
_tagHelperDescriptorProvider = tagHelperDescriptorProvider;
|
||||
}
|
||||
|
||||
protected internal override RazorParser CreateParser()
|
||||
{
|
||||
var parser = base.CreateParser();
|
||||
var tagHelperParseTreeRewriter = new TagHelperParseTreeRewriter(_tagHelperDescriptorProvider);
|
||||
|
||||
for (var i = 0; i < parser.Optimizers.Count; i++)
|
||||
{
|
||||
if (parser.Optimizers[i] is TagHelperParseTreeRewriter)
|
||||
{
|
||||
parser.Optimizers[i] = tagHelperParseTreeRewriter;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return parser;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -38,6 +38,7 @@ namespace Microsoft.AspNet.Razor.Test.Generator
|
|||
TestSpan[] spans = null,
|
||||
TabTest tabTest = TabTest.Both,
|
||||
Action<RazorEngineHost> hostConfig = null,
|
||||
Func<RazorTemplateEngine, RazorTemplateEngine> templateEngineConfig = null,
|
||||
Action<GeneratorResults> onResults = null)
|
||||
{
|
||||
bool testRun = false;
|
||||
|
|
@ -55,6 +56,7 @@ namespace Microsoft.AspNet.Razor.Test.Generator
|
|||
spans: spans,
|
||||
withTabs: true,
|
||||
hostConfig: hostConfig,
|
||||
templateEngineConfig: templateEngineConfig,
|
||||
onResults: onResults);
|
||||
}
|
||||
|
||||
|
|
@ -74,6 +76,7 @@ namespace Microsoft.AspNet.Razor.Test.Generator
|
|||
spans: spans,
|
||||
withTabs: false,
|
||||
hostConfig: hostConfig,
|
||||
templateEngineConfig: templateEngineConfig,
|
||||
onResults: onResults);
|
||||
}
|
||||
|
||||
|
|
@ -84,14 +87,15 @@ namespace Microsoft.AspNet.Razor.Test.Generator
|
|||
}
|
||||
|
||||
private void RunTestInternal(string name,
|
||||
string baselineName,
|
||||
bool generatePragmas,
|
||||
bool designTimeMode,
|
||||
IList<LineMapping> expectedDesignTimePragmas,
|
||||
TestSpan[] spans,
|
||||
bool withTabs,
|
||||
Action<RazorEngineHost> hostConfig,
|
||||
Action<GeneratorResults> onResults = null)
|
||||
string baselineName,
|
||||
bool generatePragmas,
|
||||
bool designTimeMode,
|
||||
IList<LineMapping> expectedDesignTimePragmas,
|
||||
TestSpan[] spans,
|
||||
bool withTabs,
|
||||
Action<RazorEngineHost> hostConfig,
|
||||
Func<RazorTemplateEngine, RazorTemplateEngine> templateEngineConfig,
|
||||
Action<GeneratorResults> onResults = null)
|
||||
{
|
||||
// Load the test files
|
||||
if (baselineName == null)
|
||||
|
|
@ -118,7 +122,8 @@ namespace Microsoft.AspNet.Razor.Test.Generator
|
|||
"Template",
|
||||
"DefineSection",
|
||||
"Instrumentation.BeginContext",
|
||||
"Instrumentation.EndContext")
|
||||
"Instrumentation.EndContext",
|
||||
new GeneratedTagHelperContext())
|
||||
{
|
||||
LayoutPropertyName = "Layout",
|
||||
ResolveUrlMethodName = "Href"
|
||||
|
|
@ -133,6 +138,11 @@ namespace Microsoft.AspNet.Razor.Test.Generator
|
|||
|
||||
RazorTemplateEngine engine = new RazorTemplateEngine(host);
|
||||
|
||||
if(templateEngineConfig != null)
|
||||
{
|
||||
engine = templateEngineConfig(engine);
|
||||
}
|
||||
|
||||
// Generate code for the file
|
||||
GeneratorResults results = null;
|
||||
using (var source = TestFile.Create(sourceLocation).OpenRead())
|
||||
|
|
|
|||
|
|
@ -58,7 +58,14 @@ namespace Microsoft.AspNet.Razor.Test.Parser.PartialParsing
|
|||
{
|
||||
return new RazorEngineHost(new TLanguage())
|
||||
{
|
||||
GeneratedClassContext = new GeneratedClassContext("Execute", "Write", "WriteLiteral", "WriteTo", "WriteLiteralTo", "Template", "DefineSection"),
|
||||
GeneratedClassContext = new GeneratedClassContext("Execute",
|
||||
"Write",
|
||||
"WriteLiteral",
|
||||
"WriteTo",
|
||||
"WriteLiteralTo",
|
||||
"Template",
|
||||
"DefineSection",
|
||||
new GeneratedTagHelperContext()),
|
||||
DesignTimeMode = true
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,88 @@
|
|||
#pragma checksum "BasicTagHelpers.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "8d60e58d54168749dc71a0d6d3a95887b2adb5e7"
|
||||
namespace TestOutput
|
||||
{
|
||||
using Microsoft.AspNet.Razor.Runtime.TagHelpers;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class BasicTagHelpers
|
||||
{
|
||||
#line hidden
|
||||
private System.IO.TextWriter __tagHelperStringValueBuffer = null;
|
||||
private TagHelperExecutionContext __tagHelperExecutionContext = null;
|
||||
private TagHelperRunner __tagHelperRunner = new TagHelperRunner();
|
||||
private TagHelperScopeManager __tagHelperScopeManager = new TagHelperScopeManager();
|
||||
private PTagHelper __PTagHelper = null;
|
||||
private InputTagHelper __InputTagHelper = null;
|
||||
private InputTagHelper2 __InputTagHelper2 = null;
|
||||
#line hidden
|
||||
public BasicTagHelpers()
|
||||
{
|
||||
}
|
||||
|
||||
#pragma warning disable 1998
|
||||
public override async Task ExecuteAsync()
|
||||
{
|
||||
Instrumentation.BeginContext(0, 47, true);
|
||||
WriteLiteral("<div class=\"randomNonTagHelperAttribute\">\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("p");
|
||||
__PTagHelper = CreateTagHelper<PTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__PTagHelper);
|
||||
__tagHelperExecutionContext.AddHtmlAttribute("class", "Hello World");
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
Instrumentation.BeginContext(70, 10, true);
|
||||
WriteLiteral("\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("p");
|
||||
__PTagHelper = CreateTagHelper<PTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__PTagHelper);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(87, 10, true);
|
||||
WriteLiteral("\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("input");
|
||||
__InputTagHelper = CreateTagHelper<InputTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper);
|
||||
__InputTagHelper.Type = "text";
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("type", __InputTagHelper.Type);
|
||||
__InputTagHelper2 = CreateTagHelper<InputTagHelper2>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper2);
|
||||
__InputTagHelper2.Type = __InputTagHelper.Type;
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(118, 10, true);
|
||||
WriteLiteral("\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("input");
|
||||
__InputTagHelper = CreateTagHelper<InputTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper);
|
||||
__InputTagHelper.Type = "checkbox";
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("type", __InputTagHelper.Type);
|
||||
__InputTagHelper2 = CreateTagHelper<InputTagHelper2>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper2);
|
||||
__InputTagHelper2.Type = __InputTagHelper.Type;
|
||||
__InputTagHelper2.Checked = true;
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("checked", __InputTagHelper2.Checked);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(167, 6, true);
|
||||
WriteLiteral("\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(177, 8, true);
|
||||
WriteLiteral("\r\n</div>");
|
||||
Instrumentation.EndContext();
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,225 @@
|
|||
#pragma checksum "ComplexTagHelpers.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "7540f76029963ad4e3c0a02077a63d0fe2cb0157"
|
||||
namespace TestOutput
|
||||
{
|
||||
using Microsoft.AspNet.Razor.Runtime.TagHelpers;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class ComplexTagHelpers
|
||||
{
|
||||
#line hidden
|
||||
private System.IO.TextWriter __tagHelperStringValueBuffer = null;
|
||||
private TagHelperExecutionContext __tagHelperExecutionContext = null;
|
||||
private TagHelperRunner __tagHelperRunner = new TagHelperRunner();
|
||||
private TagHelperScopeManager __tagHelperScopeManager = new TagHelperScopeManager();
|
||||
private PTagHelper __PTagHelper = null;
|
||||
private InputTagHelper __InputTagHelper = null;
|
||||
private InputTagHelper2 __InputTagHelper2 = null;
|
||||
#line hidden
|
||||
public ComplexTagHelpers()
|
||||
{
|
||||
}
|
||||
|
||||
#pragma warning disable 1998
|
||||
public override async Task ExecuteAsync()
|
||||
{
|
||||
#line 1 "ComplexTagHelpers.cshtml"
|
||||
if (true)
|
||||
{
|
||||
var checkbox = "checkbox";
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
Instrumentation.BeginContext(49, 55, true);
|
||||
WriteLiteral(" <div class=\"randomNonTagHelperAttribute\">\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("p");
|
||||
__PTagHelper = CreateTagHelper<PTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__PTagHelper);
|
||||
StartWritingScope();
|
||||
WriteLiteral("Current Time: ");
|
||||
#line 6 "ComplexTagHelpers.cshtml"
|
||||
Write(DateTime.Now);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__tagHelperExecutionContext.AddHtmlAttribute("time", __tagHelperStringValueBuffer.ToString());
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
Instrumentation.BeginContext(142, 34, true);
|
||||
WriteLiteral("\r\n <h1>Set Time:</h1>\r\n");
|
||||
Instrumentation.EndContext();
|
||||
#line 8 "ComplexTagHelpers.cshtml"
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
#line 8 "ComplexTagHelpers.cshtml"
|
||||
if (false)
|
||||
{
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
Instrumentation.BeginContext(216, 16, true);
|
||||
WriteLiteral(" ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("p");
|
||||
__PTagHelper = CreateTagHelper<PTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__PTagHelper);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
Instrumentation.BeginContext(235, 10, true);
|
||||
WriteLiteral("New Time: ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("input");
|
||||
__InputTagHelper = CreateTagHelper<InputTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper);
|
||||
__InputTagHelper.Type = "text";
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("type", __InputTagHelper.Type);
|
||||
__InputTagHelper2 = CreateTagHelper<InputTagHelper2>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper2);
|
||||
__InputTagHelper2.Type = __InputTagHelper.Type;
|
||||
__tagHelperExecutionContext.AddHtmlAttribute("value", "");
|
||||
__tagHelperExecutionContext.AddHtmlAttribute("placeholder", "Enter in a new time...");
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(315, 2, true);
|
||||
WriteLiteral("\r\n");
|
||||
Instrumentation.EndContext();
|
||||
#line 11 "ComplexTagHelpers.cshtml"
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
Instrumentation.BeginContext(365, 16, true);
|
||||
WriteLiteral(" ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("p");
|
||||
__PTagHelper = CreateTagHelper<PTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__PTagHelper);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
Instrumentation.BeginContext(384, 14, true);
|
||||
WriteLiteral("Current Time: ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("input");
|
||||
__InputTagHelper = CreateTagHelper<InputTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper);
|
||||
StartWritingScope();
|
||||
#line 14 "ComplexTagHelpers.cshtml"
|
||||
Write(checkbox);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__InputTagHelper.Type = __tagHelperStringValueBuffer.ToString();
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("type", __InputTagHelper.Type);
|
||||
__InputTagHelper2 = CreateTagHelper<InputTagHelper2>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper2);
|
||||
__InputTagHelper2.Type = __InputTagHelper.Type;
|
||||
__InputTagHelper2.Checked = true;
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("checked", __InputTagHelper2.Checked);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(439, 18, true);
|
||||
WriteLiteral("\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("input");
|
||||
__InputTagHelper = CreateTagHelper<InputTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper);
|
||||
StartWritingScope();
|
||||
#line 15 "ComplexTagHelpers.cshtml"
|
||||
Write(true ? "checkbox" : "anything");
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__InputTagHelper.Type = __tagHelperStringValueBuffer.ToString();
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("type", __InputTagHelper.Type);
|
||||
__InputTagHelper2 = CreateTagHelper<InputTagHelper2>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper2);
|
||||
__InputTagHelper2.Type = __InputTagHelper.Type;
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(507, 18, true);
|
||||
WriteLiteral("\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("input");
|
||||
__InputTagHelper = CreateTagHelper<InputTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper);
|
||||
StartWritingScope();
|
||||
#line 16 "ComplexTagHelpers.cshtml"
|
||||
if(true) {
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
WriteLiteral(" checkbox ");
|
||||
#line 16 "ComplexTagHelpers.cshtml"
|
||||
} else {
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
WriteLiteral(" anything ");
|
||||
#line 16 "ComplexTagHelpers.cshtml"
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__InputTagHelper.Type = __tagHelperStringValueBuffer.ToString();
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("type", __InputTagHelper.Type);
|
||||
__InputTagHelper2 = CreateTagHelper<InputTagHelper2>();
|
||||
__tagHelperExecutionContext.Add(__InputTagHelper2);
|
||||
__InputTagHelper2.Type = __InputTagHelper.Type;
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(608, 2, true);
|
||||
WriteLiteral("\r\n");
|
||||
Instrumentation.EndContext();
|
||||
#line 17 "ComplexTagHelpers.cshtml"
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
Instrumentation.BeginContext(625, 8, true);
|
||||
WriteLiteral(" ");
|
||||
Instrumentation.EndContext();
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(637, 14, true);
|
||||
WriteLiteral("\r\n </div>\r\n");
|
||||
Instrumentation.EndContext();
|
||||
#line 20 "ComplexTagHelpers.cshtml"
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
#pragma checksum "ContentBehaviorTagHelpers.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "27af4f673a178e8b27e320ea0d869aaf6a16a18b"
|
||||
namespace TestOutput
|
||||
{
|
||||
using Microsoft.AspNet.Razor.Runtime.TagHelpers;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class ContentBehaviorTagHelpers
|
||||
{
|
||||
#line hidden
|
||||
private System.IO.TextWriter __tagHelperStringValueBuffer = null;
|
||||
private TagHelperExecutionContext __tagHelperExecutionContext = null;
|
||||
private TagHelperRunner __tagHelperRunner = new TagHelperRunner();
|
||||
private TagHelperScopeManager __tagHelperScopeManager = new TagHelperScopeManager();
|
||||
private ModifyTagHelper __ModifyTagHelper = null;
|
||||
private NoneTagHelper __NoneTagHelper = null;
|
||||
private AppendTagHelper __AppendTagHelper = null;
|
||||
private PrependTagHelper __PrependTagHelper = null;
|
||||
private ReplaceTagHelper __ReplaceTagHelper = null;
|
||||
#line hidden
|
||||
public ContentBehaviorTagHelpers()
|
||||
{
|
||||
}
|
||||
|
||||
#pragma warning disable 1998
|
||||
public override async Task ExecuteAsync()
|
||||
{
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("modify");
|
||||
__ModifyTagHelper = CreateTagHelper<ModifyTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__ModifyTagHelper);
|
||||
StartWritingScope();
|
||||
WriteLiteral("\r\n ");
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("none");
|
||||
__NoneTagHelper = CreateTagHelper<NoneTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__NoneTagHelper);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral("\r\n ");
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("append");
|
||||
__AppendTagHelper = CreateTagHelper<AppendTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__AppendTagHelper);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral("\r\n ");
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("prepend");
|
||||
__PrependTagHelper = CreateTagHelper<PrependTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__PrependTagHelper);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateContent());
|
||||
WriteLiteral("\r\n ");
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("replace");
|
||||
__ReplaceTagHelper = CreateTagHelper<ReplaceTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__ReplaceTagHelper);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateContent());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
WriteLiteral("\r\n ");
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
WriteLiteral("\r\n ");
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateContent());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
WriteLiteral("\r\n ");
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
WriteLiteral("\r\n");
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext, __tagHelperStringValueBuffer).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateContent());
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
#pragma checksum "SingleTagHelper.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "2c9b5f2ce383fe784f68f84cbb669ab04077c417"
|
||||
namespace TestOutput
|
||||
{
|
||||
using Microsoft.AspNet.Razor.Runtime.TagHelpers;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class SingleTagHelper
|
||||
{
|
||||
#line hidden
|
||||
private System.IO.TextWriter __tagHelperStringValueBuffer = null;
|
||||
private TagHelperExecutionContext __tagHelperExecutionContext = null;
|
||||
private TagHelperRunner __tagHelperRunner = new TagHelperRunner();
|
||||
private TagHelperScopeManager __tagHelperScopeManager = new TagHelperScopeManager();
|
||||
private PTagHelper __PTagHelper = null;
|
||||
#line hidden
|
||||
public SingleTagHelper()
|
||||
{
|
||||
}
|
||||
|
||||
#pragma warning disable 1998
|
||||
public override async Task ExecuteAsync()
|
||||
{
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("p");
|
||||
__PTagHelper = CreateTagHelper<PTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__PTagHelper);
|
||||
__PTagHelper.Foo = 1337;
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("foo", __PTagHelper.Foo);
|
||||
__tagHelperExecutionContext.AddHtmlAttribute("class", "Hello World");
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
Instrumentation.BeginContext(34, 11, true);
|
||||
WriteLiteral("Body of Tag");
|
||||
Instrumentation.EndContext();
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,140 @@
|
|||
#pragma checksum "TagHelpersInHelper.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "522348d1a7650330b24372fade70f418f61027bd"
|
||||
namespace TestOutput
|
||||
{
|
||||
using Microsoft.AspNet.Razor.Runtime.TagHelpers;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class TagHelpersInHelper
|
||||
{
|
||||
public static Template
|
||||
#line 1 "TagHelpersInHelper.cshtml"
|
||||
MyHelper(string val)
|
||||
{
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
return new Template((__razor_helper_writer) => {
|
||||
#line 2 "TagHelpersInHelper.cshtml"
|
||||
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
Instrumentation.BeginContext(33, 19, true);
|
||||
WriteLiteralTo(__razor_helper_writer, " <div>\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("mytaghelper");
|
||||
__MyTagHelper = CreateTagHelper<MyTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__MyTagHelper);
|
||||
StartWritingScope();
|
||||
WriteLiteral("Current Time: ");
|
||||
#line 4 "TagHelpersInHelper.cshtml"
|
||||
Write(DateTime.Now);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__MyTagHelper.BoundProperty = __tagHelperStringValueBuffer.ToString();
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("BoundProperty", __MyTagHelper.BoundProperty);
|
||||
StartWritingScope();
|
||||
WriteLiteral("Current Time: ");
|
||||
#line 4 "TagHelpersInHelper.cshtml"
|
||||
Write(DateTime.Now);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__tagHelperExecutionContext.AddHtmlAttribute("unboundproperty", __tagHelperStringValueBuffer.ToString());
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteralTo(__razor_helper_writer, __tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
Instrumentation.BeginContext(155, 52, true);
|
||||
WriteLiteralTo(__razor_helper_writer, "\r\n In None ContentBehavior.\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("nestedtaghelper");
|
||||
__NestedTagHelper = CreateTagHelper<NestedTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__NestedTagHelper);
|
||||
StartWritingScope();
|
||||
WriteLiteral("Some buffered values with a value of ");
|
||||
#line 6 "TagHelpersInHelper.cshtml"
|
||||
Write(val);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext, __tagHelperStringValueBuffer).Result;
|
||||
WriteLiteralTo(__razor_helper_writer, __tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteralTo(__razor_helper_writer, __tagHelperExecutionContext.Output.GenerateContent());
|
||||
WriteLiteralTo(__razor_helper_writer, __tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(283, 10, true);
|
||||
WriteLiteralTo(__razor_helper_writer, "\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
WriteLiteralTo(__razor_helper_writer, __tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(307, 14, true);
|
||||
WriteLiteralTo(__razor_helper_writer, "\r\n </div>\r\n");
|
||||
Instrumentation.EndContext();
|
||||
#line 9 "TagHelpersInHelper.cshtml"
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
}
|
||||
);
|
||||
#line 9 "TagHelpersInHelper.cshtml"
|
||||
}
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
#line hidden
|
||||
private System.IO.TextWriter __tagHelperStringValueBuffer = null;
|
||||
private TagHelperExecutionContext __tagHelperExecutionContext = null;
|
||||
private TagHelperRunner __tagHelperRunner = new TagHelperRunner();
|
||||
private TagHelperScopeManager __tagHelperScopeManager = new TagHelperScopeManager();
|
||||
private MyTagHelper __MyTagHelper = null;
|
||||
private NestedTagHelper __NestedTagHelper = null;
|
||||
#line hidden
|
||||
public TagHelpersInHelper()
|
||||
{
|
||||
}
|
||||
|
||||
#pragma warning disable 1998
|
||||
public override async Task ExecuteAsync()
|
||||
{
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("mytaghelper");
|
||||
__MyTagHelper = CreateTagHelper<MyTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__MyTagHelper);
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
Instrumentation.BeginContext(338, 9, false);
|
||||
#line 10 "TagHelpersInHelper.cshtml"
|
||||
Write(MyHelper(item => new Template((__razor_template_writer) => {
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("nestedtaghelper");
|
||||
__NestedTagHelper = CreateTagHelper<NestedTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__NestedTagHelper);
|
||||
StartWritingScope();
|
||||
WriteLiteral("Custom Value");
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext, __tagHelperStringValueBuffer).Result;
|
||||
WriteLiteralTo(__razor_template_writer, __tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteralTo(__razor_template_writer, __tagHelperExecutionContext.Output.GenerateContent());
|
||||
WriteLiteralTo(__razor_template_writer, __tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
}
|
||||
)
|
||||
));
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
Instrumentation.EndContext();
|
||||
WriteLiteral(__tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(410, 2, true);
|
||||
WriteLiteral("\r\n");
|
||||
Instrumentation.EndContext();
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,94 @@
|
|||
#pragma checksum "TagHelpersInSection.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "bfe8d61279682f87dc473aa71134e86af554f55e"
|
||||
namespace TestOutput
|
||||
{
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
public class TagHelpersInSection
|
||||
{
|
||||
#line hidden
|
||||
private System.IO.TextWriter __tagHelperStringValueBuffer = null;
|
||||
private TagHelperExecutionContext __tagHelperExecutionContext = null;
|
||||
private TagHelperRunner __tagHelperRunner = new TagHelperRunner();
|
||||
private TagHelperScopeManager __tagHelperScopeManager = new TagHelperScopeManager();
|
||||
private MyTagHelper __MyTagHelper = null;
|
||||
private NestedTagHelper __NestedTagHelper = null;
|
||||
#line hidden
|
||||
public TagHelpersInSection()
|
||||
{
|
||||
}
|
||||
|
||||
#pragma warning disable 1998
|
||||
public override async Task ExecuteAsync()
|
||||
{
|
||||
#line 1 "TagHelpersInSection.cshtml"
|
||||
|
||||
var code = "some code";
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
|
||||
Instrumentation.BeginContext(34, 4, true);
|
||||
WriteLiteral("\r\n\r\n");
|
||||
Instrumentation.EndContext();
|
||||
DefineSection("MySection", new Template((__razor_template_writer) => {
|
||||
Instrumentation.BeginContext(58, 21, true);
|
||||
WriteLiteralTo(__razor_template_writer, "\r\n <div>\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("mytaghelper");
|
||||
__MyTagHelper = CreateTagHelper<MyTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__MyTagHelper);
|
||||
StartWritingScope();
|
||||
WriteLiteral("Current Time: ");
|
||||
#line 7 "TagHelpersInSection.cshtml"
|
||||
Write(DateTime.Now);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__MyTagHelper.BoundProperty = __tagHelperStringValueBuffer.ToString();
|
||||
__tagHelperExecutionContext.AddTagHelperAttribute("BoundProperty", __MyTagHelper.BoundProperty);
|
||||
StartWritingScope();
|
||||
WriteLiteral("Current Time: ");
|
||||
#line 7 "TagHelpersInSection.cshtml"
|
||||
Write(DateTime.Now);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__tagHelperExecutionContext.AddHtmlAttribute("unboundproperty", __tagHelperStringValueBuffer.ToString());
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext).Result;
|
||||
WriteLiteralTo(__razor_template_writer, __tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
Instrumentation.BeginContext(182, 52, true);
|
||||
WriteLiteralTo(__razor_template_writer, "\r\n In None ContentBehavior.\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.Begin("nestedtaghelper");
|
||||
__NestedTagHelper = CreateTagHelper<NestedTagHelper>();
|
||||
__tagHelperExecutionContext.Add(__NestedTagHelper);
|
||||
StartWritingScope();
|
||||
WriteLiteral("Some buffered values with ");
|
||||
#line 9 "TagHelpersInSection.cshtml"
|
||||
Write(code);
|
||||
|
||||
#line default
|
||||
#line hidden
|
||||
__tagHelperStringValueBuffer = EndWritingScope();
|
||||
__tagHelperExecutionContext.Output = __tagHelperRunner.RunAsync(__tagHelperExecutionContext, __tagHelperStringValueBuffer).Result;
|
||||
WriteLiteralTo(__razor_template_writer, __tagHelperExecutionContext.Output.GenerateStartTag());
|
||||
WriteLiteralTo(__razor_template_writer, __tagHelperExecutionContext.Output.GenerateContent());
|
||||
WriteLiteralTo(__razor_template_writer, __tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(300, 10, true);
|
||||
WriteLiteralTo(__razor_template_writer, "\r\n ");
|
||||
Instrumentation.EndContext();
|
||||
WriteLiteralTo(__razor_template_writer, __tagHelperExecutionContext.Output.GenerateEndTag());
|
||||
__tagHelperExecutionContext = __tagHelperScopeManager.End();
|
||||
Instrumentation.BeginContext(324, 14, true);
|
||||
WriteLiteralTo(__razor_template_writer, "\r\n </div>\r\n");
|
||||
Instrumentation.EndContext();
|
||||
}
|
||||
));
|
||||
}
|
||||
#pragma warning restore 1998
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
<div class="randomNonTagHelperAttribute">
|
||||
<p class="Hello World">
|
||||
<p></p>
|
||||
<input type="text" />
|
||||
<input type="checkbox" checked="true"/>
|
||||
</p>
|
||||
</div>
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
@if (true)
|
||||
{
|
||||
var checkbox = "checkbox";
|
||||
|
||||
<div class="randomNonTagHelperAttribute">
|
||||
<p time="Current Time: @DateTime.Now">
|
||||
<h1>Set Time:</h1>
|
||||
@if (false)
|
||||
{
|
||||
<p>New Time: <input type="text" value="" placeholder="Enter in a new time..."/></p>
|
||||
}
|
||||
else
|
||||
{
|
||||
<p>Current Time: <input type=@checkbox checked=true /></p>
|
||||
<input type='@(true ? "checkbox" : "anything")' />
|
||||
<input type='@if(true) { <text>checkbox</text> } else { <text>anything</text> }' />
|
||||
}
|
||||
</p>
|
||||
</div>
|
||||
}
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
<modify>
|
||||
<none>
|
||||
<append>
|
||||
<prepend>
|
||||
<replace>This should not be in the output</replace>
|
||||
</prepend>
|
||||
</append>
|
||||
</none>
|
||||
</modify>
|
||||
|
|
@ -0,0 +1 @@
|
|||
<p class="Hello World" foo="1337">Body of Tag</p>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
@helper MyHelper(string val)
|
||||
{
|
||||
<div>
|
||||
<mytaghelper boundproperty="Current Time: @DateTime.Now" unboundproperty="Current Time: @DateTime.Now">
|
||||
In None ContentBehavior.
|
||||
<nestedtaghelper>Some buffered values with a value of @val</nestedtaghelper>
|
||||
</mytaghelper>
|
||||
</div>
|
||||
}
|
||||
<mytaghelper>@MyHelper(@<nestedtaghelper>Custom Value</nestedtaghelper>)</mytaghelper>
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
@{
|
||||
var code = "some code";
|
||||
}
|
||||
|
||||
@section MySection {
|
||||
<div>
|
||||
<mytaghelper boundproperty="Current Time: @DateTime.Now" unboundproperty="Current Time: @DateTime.Now">
|
||||
In None ContentBehavior.
|
||||
<nestedtaghelper>Some buffered values with @code</nestedtaghelper>
|
||||
</mytaghelper>
|
||||
</div>
|
||||
}
|
||||
Loading…
Reference in New Issue