ServiceStack Razor ContentPage在调试中工作,但未部署
我正在~/View.cshtml上尝试一个非常简单的contentpage,它包括ServiceStack Razor ContentPage在调试中工作,但未部署,razor,
servicestack,Razor,
servicestack,我正在~/View.cshtml上尝试一个非常简单的contentpage,它包括 @inherits ViewPage @{ Layout = "SimpleLayout"; ViewBag.Title = "Title"; } <div id="content-page"> <p>Test</p> </div> @继承ViewPage @{ Layout=“SimpleLayout”; View
@inherits ViewPage
@{
Layout = "SimpleLayout";
ViewBag.Title = "Title";
}
<div id="content-page">
<p>Test</p>
</div>
@继承ViewPage
@{
Layout=“SimpleLayout”;
ViewBag.Title=“Title”;
}
试验
在~/Views/Shared/SimpleLayout.cshtml是
<!DOCTYPE HTML>
<html>
<head>
<title>Simple Layout</title>
</head>
<body>
<div id="content">
@RenderBody()
</div>
</body>
</html>
简单布局
@RenderBody()
在调试模式下工作正常,但在部署时会显示
编译错误
描述:编译资源时出错
服务此请求所必需的。请查看以下具体内容
错误详细信息,并适当修改源代码
编译器错误消息:CS0146:循环基类依赖项
包括“RazoroOutput.ViewPage”和“RazoroOutput.ViewPage”
我试图尽可能地遵循摇滚明星的例子,所以不知道哪里出了问题。我的服务很好
如有任何建议,将不胜感激
更新
当页面名称更改(例如NewPage.cshtml)时,它也不会在调试中工作,引发相同的异常。我在尝试呈现Razor页面时收到类似的编译错误。检查您网站的
AppHost
是否继承自AppHostBase
,而不是AppHostHttpListenerBase
中的Web.Config
,确保您具有:
<compilation debug="false">
我遇到了同样的错误,这就解决了它。上面建议的设置
编译调试=“false”
对我不起作用
我在IIS Express中本地运行时遇到了相同的错误,发现如果我将此添加到web.config,它将正常工作:
<appSettings>
<add key="webPages:Enabled" value="false" />
</appSettings>
我在ServiceStack的RazorRockstar示例中找到了该设置,然后逐行将其与我自己的项目进行比较,以了解我的项目不起作用的原因。您是否有Github存储库或其他方法来共享您的项目代码?使用RazorRockstar示例,我没有看到在调试和发布配置中使用“父布局”编译视图时出现问题。这个周末我会把代码更新一下。这似乎已经帮我解决了。谢谢