protected override void Visit(InjectChunk chunk) { // TODO: Remove this InjectChunk handling point, make the inject directive more generic. var injectTokens = new List <RazorDirectiveToken> { new RazorDirectiveToken { Descriptor = new RazorDirectiveTokenDescriptor { Type = RazorDirectiveTokenType.Type }, Value = chunk.TypeName, }, new RazorDirectiveToken { Descriptor = new RazorDirectiveTokenDescriptor { Type = RazorDirectiveTokenType.Member }, Value = chunk.MemberName, } }; var injectDirective = new RazorSingleLineDirective() { Name = "inject", Tokens = injectTokens, }; _context.Builder.Add(injectDirective); }
public void Visit_UpdatesTModelTokenToMatchModelType(string typeName, string expectedValue) { // Arrange var chunk = new InjectChunk(typeName, "TestHelper"); var merger = new InjectChunkMerger("Person"); // Act merger.VisitChunk(chunk); // Assert Assert.Equal(expectedValue, chunk.TypeName); Assert.Equal("TestHelper", chunk.MemberName); }
private InjectChunk TransformChunk(InjectChunk injectChunk) { var typeName = ChunkHelper.ReplaceTModel(injectChunk.TypeName, _modelType); if (typeName != injectChunk.TypeName) { return new InjectChunk(typeName, injectChunk.MemberName) { Start = injectChunk.Start, Association = injectChunk.Association }; } return injectChunk; }
private InjectChunk TransformChunk(InjectChunk injectChunk) { var typeName = ChunkHelper.ReplaceTModel(injectChunk.TypeName, _modelType); if (typeName != injectChunk.TypeName) { return(new InjectChunk(typeName, injectChunk.MemberName) { Start = injectChunk.Start, Association = injectChunk.Association }); } return(injectChunk); }
protected virtual void Visit(InjectChunk chunk) { // TODO: Should remove once a more generic directive chunk is created. }