我有一个ASP Core 1x应用程序,运行正常,已升级到2.x。在dev中运行正常,但是一旦部署,我收到了有关voth 2.11和2.1.13中存在的PrerenderTagHelper的以下错误。
The type 'PrerenderTagHelper' exists in both 'Microsoft.AspNetCore.SpaServices, Version=2.1.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60' and 'Microsoft.AspNetCore.SpaServices, Version=2.1.13.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'
+
private global::Microsoft.AspNetCore.SpaServices.Prerendering.PrerenderTagHelper __Microsoft_AspNetCore_SpaServices_Prerendering_PrerenderTagHelper;
我已经将MvcRazorCompileOnPublish和PreserveCompilationContext添加到了csproj文件中,该文件至少显示了与部署时相同的错误。以下是我的csproj。
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<VersionPrefix>1.5.0</VersionPrefix>
<TargetFramework>netcoreapp2.1</TargetFramework>
<DebugType>portable</DebugType>
<AssemblyName>src</AssemblyName>
<OutputType>Exe</OutputType>
<PackageId>src</PackageId>
<MvcRazorCompileOnPublish>true</MvcRazorCompileOnPublish>
<PreserveCompilationContext>true</PreserveCompilationContext>
</PropertyGroup>
<ItemGroup>
<Compile Remove="node_modules\**\*" />
<None Update="ClientApp\dist\**\*;Data\**\*;PhantomJS\**\*;wkhtmltopdf\**\*;Views\**\*;Images\**\*;Resources\**\*;nlog.config;wwwroot\**\*">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
</None>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="NLog.Extensions.Logging" Version="1.0.0" />
<PackageReference Include="NLog.Web.AspNetCore" Version="4.5.0" />
<PackageReference Include="Dapper" Version="1.60.5" />
<PackageReference Include="Dapper.FastCrud" Version="2.5.0.39" />
<PackageReference Include="MailKit" Version="1.10.1" />
<PackageReference Include="EPPlus.Core" Version="1.5.4" />
<PackageReference Include="Hangfire.Core" Version="1.6.8" />
<PackageReference Include="Hangfire.SqlServer" Version="1.6.8" />
<PackageReference Include="Hangfire.AspNetCore" Version="1.6.8" />
<PackageReference Include="Magick.NET-Q8-AnyCPU" Version="7.0.6.601" />
</ItemGroup>
<Target Name="PrepublishScript" BeforeTargets="PrepareForPublish">
<Exec Command="npm install" />
<Exec Command="node node_modules/webpack/bin/webpack.js --config webpack.config.generate-handover.js --env.prod" />
<Exec Command="node node_modules/webpack/bin/webpack.js --config webpack.config.handover.js --env.prod" />
<Exec Command="node node_modules/webpack/bin/webpack.js --config webpack.config.vendor.js --env.prod" />
<Exec Command="node node_modules/webpack/bin/webpack.js --env.prod" />
</Target>
</Project>
答案 0 :(得分:0)
已跳到ASP Core 3.0,并且再次正常工作。没有锻炼导致它在2.x中失败的原因。