diff --git a/src/Razor/Microsoft.AspNetCore.Razor.Tools/src/DiscoverCommand.cs b/src/Razor/Microsoft.AspNetCore.Razor.Tools/src/DiscoverCommand.cs index 3ba5eb5ab5..65329ee46b 100644 --- a/src/Razor/Microsoft.AspNetCore.Razor.Tools/src/DiscoverCommand.cs +++ b/src/Razor/Microsoft.AspNetCore.Razor.Tools/src/DiscoverCommand.cs @@ -142,6 +142,11 @@ namespace Microsoft.AspNetCore.Razor.Tools b.Features.Add(new CompilationTagHelperFeature()); b.Features.Add(new DefaultTagHelperDescriptorProvider()); b.Features.Add(new ComponentTagHelperDescriptorProvider()); + b.Features.Add(new BindTagHelperDescriptorProvider()); + b.Features.Add(new EventHandlerTagHelperDescriptorProvider()); + b.Features.Add(new RefTagHelperDescriptorProvider()); + + b.Features.Add(new DefaultTypeNameFeature()); }); var feature = engine.Engine.Features.OfType().Single(); diff --git a/src/Razor/Microsoft.AspNetCore.Razor.Tools/src/GenerateCommand.cs b/src/Razor/Microsoft.AspNetCore.Razor.Tools/src/GenerateCommand.cs index f32075f5bb..e912b8ec26 100644 --- a/src/Razor/Microsoft.AspNetCore.Razor.Tools/src/GenerateCommand.cs +++ b/src/Razor/Microsoft.AspNetCore.Razor.Tools/src/GenerateCommand.cs @@ -7,6 +7,7 @@ using System.Diagnostics; using System.IO; using System.Threading.Tasks; using Microsoft.AspNetCore.Razor.Language; +using Microsoft.CodeAnalysis.Razor; using Microsoft.Extensions.CommandLineUtils; using Microsoft.VisualStudio.LanguageServices.Razor.Serialization; using Newtonsoft.Json; @@ -169,6 +170,7 @@ namespace Microsoft.AspNetCore.Razor.Tools var engine = RazorProjectEngine.Create(configuration, compositeFileSystem, b => { b.Features.Add(new StaticTagHelperFeature() { TagHelpers = tagHelpers, }); + b.Features.Add(new DefaultTypeNameFeature()); if (GenerateDeclaration.HasValue()) { diff --git a/src/Razor/Microsoft.NET.Sdk.Razor/src/build/netstandard2.0/Microsoft.NET.Sdk.Razor.Configuration.targets b/src/Razor/Microsoft.NET.Sdk.Razor/src/build/netstandard2.0/Microsoft.NET.Sdk.Razor.Configuration.targets index f4a4284ca4..7b27791129 100644 --- a/src/Razor/Microsoft.NET.Sdk.Razor/src/build/netstandard2.0/Microsoft.NET.Sdk.Razor.Configuration.targets +++ b/src/Razor/Microsoft.NET.Sdk.Razor/src/build/netstandard2.0/Microsoft.NET.Sdk.Razor.Configuration.targets @@ -10,6 +10,11 @@ Copyright (c) .NET Foundation. All rights reserved. *********************************************************************************************** --> + + + <_TargetingNETCoreApp30OrLater Condition="'$(TargetFrameworkIdentifier)' == '.NETCoreApp' AND '$(_TargetFrameworkVersionWithoutV)' > '2.9'">true + + - true + $(_TargetingNETCoreApp30OrLater) - true + $(_TargetingNETCoreApp30OrLater) + false + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Razor/test/testassets/ComponentLibrary/GenericComponent.razor b/src/Razor/test/testassets/ComponentLibrary/GenericComponent.razor new file mode 100644 index 0000000000..5037fef5c0 --- /dev/null +++ b/src/Razor/test/testassets/ComponentLibrary/GenericComponent.razor @@ -0,0 +1,8 @@ +@typeparam TItem + +

@Title - @Item

+ +@functions { + [Parameter] TItem Item { get; set; } + [Parameter] string Title { get; set; } +} \ No newline at end of file diff --git a/src/Razor/test/testassets/ComponentLibrary/MyComponent.cshtml b/src/Razor/test/testassets/ComponentLibrary/MyComponent.cshtml new file mode 100644 index 0000000000..e1a56ee3ae --- /dev/null +++ b/src/Razor/test/testassets/ComponentLibrary/MyComponent.cshtml @@ -0,0 +1 @@ + \ No newline at end of file