razor - Error RZ3007: Targeted tag name cannot be null or whitespace -
after upgrading .net core 2.0 1.1 web application cannot run. error message indicated below. after checking output found references rz3007 error believe related razor compiler. view not compiling.
home/index.cshtml:
@model layoutviewmodel <div></div>
views/shared/_layout.cshtml
<!doctype html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>@viewdata["title"] - glcoderconfiguration</title> <environment names="development"> <link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" /> <link rel="stylesheet" href="~/css/site.css?" /> </environment> <environment names="staging,production"> <link rel="stylesheet" href="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.7/css/bootstrap.min.css" asp-fallback-href="~/lib/bootstrap/dist/css/bootstrap.min.css" asp-fallback-test-class="sr-only" asp-fallback-test-property="position" asp-fallback-test-value="absolute" /> <link rel="stylesheet" href="~/css/site.min.css?" asp-append-version="true" /> </environment> </head> <body> <nav class="navbar navbar-default navbar-form " > <div class="navbar-header" style="margin-top:10px;margin-bottom:15px;"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span class="sr-only">toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">scm - ncmain</a> </div> <div class="collapse navbar-collapse vcenter" id="bs-example-navbar-collapse-1" style="margin-top:10px;margin-bottom:0px;"> </div> </nav> <div class="container body-content"> @renderbody() <hr /> <footer> <p>© 2017 - england logisitics - scm</p> </footer> </div> <environment names="development"> <script src="~/lib/jquery/dist/jquery.js"></script> <script src="~/lib/bootstrap/dist/js/bootstrap.js"></script> <script src="~/js/site.js" asp-append-version="true"></script> </environment> <environment names="staging,production"> <script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-2.2.0.min.js" asp-fallback-src="~/lib/jquery/dist/jquery.min.js" asp-fallback-test="window.jquery" crossorigin="anonymous" integrity="sha384-k+ctzq+ll8q6tp7i94w+qzqsfrv2a+afhii9k8z8l9ggpc8x+ytst4ybo/hh+8fk"> </script> <script src="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.7/bootstrap.min.js" asp-fallback-src="~/lib/bootstrap/dist/js/bootstrap.min.js" asp-fallback-test="window.jquery && window.jquery.fn && window.jquery.fn.modal" crossorigin="anonymous" integrity="sha384-tc5iqib027qvyjsmfhjomalkfuwvxzxupncja7l2mcwnipg9mgcd8wgnicpd7txa"> </script> <script src="~/js/site.min.js" asp-append-version="true"></script> </environment> @rendersection("scripts", required: false) </body> </html>
i had couple of view components (loginstatus , menuitems) removed them try working.
output run:
microsoft.aspnetcore.mvc.razor.compilation.compilationfailedexception: 1 or more compilation failures occurred: (0,0): error rz3007: targeted tag name cannot null or whitespace. @ microsoft.aspnetcore.mvc.razor.internal.razorviewcompiler.compileandemit(string relativepath) @ microsoft.aspnetcore.mvc.razor.internal.razorviewcompiler.createcacheentry(string normalizedpath) --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) @ system.runtime.compilerservices.taskawaiter`1.getresult() @ microsoft.aspnetcore.mvc.razor.internal.defaultrazorpagefactoryprovider.createfactory(string relativepath) @ microsoft.aspnetcore.mvc.razor.razorviewengine.createcacheresult(hashset`1 expirationtokens, string relativepath, boolean ismainpage) @ microsoft.aspnetcore.mvc.razor.razorviewengine.oncachemiss(viewlocationexpandercontext expandercontext, viewlocationcachekey cachekey) @ microsoft.aspnetcore.mvc.razor.razorviewengine.locatepagefromviewlocations(actioncontext actioncontext, string pagename, boolean ismainpage) @ microsoft.aspnetcore.mvc.razor.razorviewengine.findview(actioncontext context, string viewname, boolean ismainpage) @ microsoft.aspnetcore.mvc.viewengines.compositeviewengine.findview(actioncontext context, string viewname, boolean ismainpage) @ microsoft.aspnetcore.mvc.viewfeatures.internal.viewresultexecutor.findview(actioncontext actioncontext, viewresult viewresult) @ microsoft.aspnetcore.mvc.viewresult.<executeresultasync>d__26.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) @ microsoft.aspnetcore.mvc.internal.resourceinvoker.<invokeresultasync>d__19.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) @ microsoft.aspnetcore.mvc.internal.resourceinvoker.<invokenextresultfilterasync>d__24.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ microsoft.aspnetcore.mvc.internal.resourceinvoker.rethrow(resultexecutedcontext context) @ microsoft.aspnetcore.mvc.internal.resourceinvoker.next(state& next, scope& scope, object& state, boolean& iscompleted) @ microsoft.aspnetcore.mvc.internal.resourceinvoker.<invokenextresourcefilter>d__22.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ microsoft.aspnetcore.mvc.internal.resourceinvoker.rethrow(resourceexecutedcontext context) @ microsoft.aspnetcore.mvc.internal.resourceinvoker.next(state& next, scope& scope, object& state, boolean& iscompleted) @ microsoft.aspnetcore.mvc.internal.resourceinvoker.<invokefilterpipelineasync>d__17.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) @ microsoft.aspnetcore.mvc.internal.resourceinvoker.<invokeasync>d__15.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) @ microsoft.aspnetcore.builder.routermiddleware.<invoke>d__4.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) @ microsoft.aspnetcore.session.sessionmiddleware.<invoke>d__9.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ microsoft.aspnetcore.session.sessionmiddleware.<invoke>d__9.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) @ microsoft.aspnetcore.authentication.authenticationmiddleware.<invoke>d__6.movenext() --- end of stack trace previous location exception thrown --- @ system.runtime.exceptionservices.exceptiondispatchinfo.throw() @ system.runtime.compilerservices.taskawaiter.handlenonsuccessanddebuggernotification(task task) @ microsoft.aspnetcore.diagnostics.developerexceptionpagemiddleware.<invoke>d__7.movenext()
.csproj
<project sdk="microsoft.net.sdk.web"> <propertygroup> <targetframework>netcoreapp2.0</targetframework> <mvcrazorcompileonpublish>true</mvcrazorcompileonpublish> <mvccompileviews>true</mvccompileviews> <preservecompilationcontext>true</preservecompilationcontext> <assettargetfallback>$(assettargetfallback);portable-net45+win8+wp8+wpa81;</assettargetfallback> <startupobject>glcoderconfiguration.program</startupobject> </propertygroup> <itemgroup> <packagereference include="fluentvalidation" version="7.1.1" /> <packagereference include="microsoft.aspnetcore" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.diagnostics" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.identity.entityframeworkcore" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.mvc" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.mvc.dataannotations" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.mvc.razor" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.mvc.razor.viewcompilation" version="2.0.0" privateassets="all" /> <packagereference include="microsoft.aspnetcore.mvc.taghelpers" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.mvc.viewfeatures" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.razor.runtime" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.server.iisintegration" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.session" version="2.0.0" /> <packagereference include="microsoft.aspnetcore.staticfiles" version="2.0.0" /> <packagereference include="microsoft.entityframeworkcore.design" version="2.0.0" /> <packagereference include="microsoft.entityframeworkcore.sqlserver" version="2.0.0" /> <packagereference include="microsoft.entityframeworkcore.tools" version="2.0.0" /> <packagereference include="microsoft.extensions.caching.memory" version="2.0.0" /> <packagereference include="microsoft.extensions.logging.console" version="2.0.0" /> <packagereference include="microsoft.extensions.logging.debug" version="2.0.0" /> <packagereference include="microsoft.extensions.options.configurationextensions" version="2.0.0" /> <packagereference include="microsoft.netcore.platforms" version="2.0.0" /> <packagereference include="microsoft.visualstudio.web.browserlink" version="2.0.0" /> <packagereference include="microsoft.visualstudio.web.codegeneration.design" version="2.0.0" /> <packagereference include="netstandard.library" version="2.0.0" /> <packagereference include="system.runtime.compilerservices.unsafe" version="4.4.0" /> </itemgroup> <itemgroup> <itemgroup> <dotnetclitoolreference include="microsoft.entityframeworkcore.tools.dotnet" version="2.0.0" /> <dotnetclitoolreference include="microsoft.extensions.secretmanager.tools" version="2.0.0" /> <dotnetclitoolreference include="microsoft.visualstudio.web.codegeneration.tools" version="2.0.0" /> </itemgroup> <itemgroup> <projectreference include="..\..\scmenumerations\scmenumerations.csproj" /> <projectreference include="..\..\tmainmodel\tmainmodel.csproj" /> <projectreference include="..\..\viewhelperfunctions\viewextensions.csproj" /> </itemgroup> </project>
try replace environment names
environment include
like.
<environment include="staging,production"> <strong>hostingenvironment.environmentname staging or production</strong> </environment>
according documentation:
the
include
property (in asp.net core 2.0) has similar behavior ofnames
attribute in asp.net core 1.0.
update: tried migrate of projects myself (from 1.1 2.0) using packages in .csproj
in order reproduce error, unfortunately no luck. not sure, maybe caused precompilation.
i had compilationfailedexception
cs0246
, shows lines caused problem. rz3007
(0,0) looks razor somehow broken. should open new issue on github.
not sure if helps, alo try install microsoft.aspnetcore.razor.language
nuget package, because seems needed if read discussion razor changes.
also try update visual studio 2017 version 15.3 if don't use now. also, make sure sdk updated version 2.0
wiki
Comments
Post a Comment