ServiceStack Razor Intellisense 在 SelfHost 中不工作
ServiceStack Razor Intellisense not working in SelfHost
我有 ServiceStack.Razor 被引用。
以下 razor 文件效果很好:
@model ServiceStack.Host.Operation
@Model.Name
但 IntelliSense(和 R# 代码分析)显示错误:"Cannot resolve symbol 'model'"
引用 Microsoft.AspNet.Mvc 使 Intellisense 工作,但 Razor 页面未编译。
这是因为 ServiceStack.Razor 包含 System.Web.Razor 程序集版本 3.0.0 而 Microsoft.AspNet.Mvc 需要一个 3.2.3,一个被另一个覆盖,发生程序集加载异常。
试图遵循这个答案:
ServiceStack turn on Razor intellisense support without MVC
并添加 Web.config 但这给了我不同的错误:
"Cannot access private field 'model' here"
如何在不中断应用程序的情况下使 Intellisense 工作?
不幸的是 VS.NET 2015 设计器不正确支持在自托管(即非 ASP.NET 项目)中编辑 Razor 页面,因此您将无法消除所有设计器错误,尽管您可以通过首先在 Razor 配置中添加 Web.config
来最大程度地减少问题,这是您可以使用的 Web.config template,您需要将 $safeprojectname$
替换为项目的命名空间。 Web.config
对非 Web 项目的行为没有影响,它只是用来为 VS.NET 与 ASP.NET Web 项目耦合的智能感知提供提示。
而不是 @model
你会想要使用更明确的:
@inherits ViewPage<ServiceStack.Host.Operation>
这两个做同样的事情,但设计师更喜欢显式 @inherits
。
我有 ServiceStack.Razor 被引用。
以下 razor 文件效果很好:
@model ServiceStack.Host.Operation
@Model.Name
但 IntelliSense(和 R# 代码分析)显示错误:"Cannot resolve symbol 'model'"
引用 Microsoft.AspNet.Mvc 使 Intellisense 工作,但 Razor 页面未编译。 这是因为 ServiceStack.Razor 包含 System.Web.Razor 程序集版本 3.0.0 而 Microsoft.AspNet.Mvc 需要一个 3.2.3,一个被另一个覆盖,发生程序集加载异常。
试图遵循这个答案: ServiceStack turn on Razor intellisense support without MVC
并添加 Web.config 但这给了我不同的错误: "Cannot access private field 'model' here"
如何在不中断应用程序的情况下使 Intellisense 工作?
不幸的是 VS.NET 2015 设计器不正确支持在自托管(即非 ASP.NET 项目)中编辑 Razor 页面,因此您将无法消除所有设计器错误,尽管您可以通过首先在 Razor 配置中添加 Web.config
来最大程度地减少问题,这是您可以使用的 Web.config template,您需要将 $safeprojectname$
替换为项目的命名空间。 Web.config
对非 Web 项目的行为没有影响,它只是用来为 VS.NET 与 ASP.NET Web 项目耦合的智能感知提供提示。
而不是 @model
你会想要使用更明确的:
@inherits ViewPage<ServiceStack.Host.Operation>
这两个做同样的事情,但设计师更喜欢显式 @inherits
。