2016-08-12 9 views
1

私はServiceStack.Razorを参照しています。かみそりのファイルに続きServiceStack Razor IntellisenseがSelfHostで動作しない

素晴らしい作品:

@model ServiceStack.Host.Operation 

@Model.Name 

が、インテリセンス(およびR#コード解析)がエラーを示しています。"のシンボルを解決できません 'モデル'"

の参照Microsoft.AspNet.Mvcの行いをIntellisenseは動作しますが、Razorページはコンパイルされません。 ServiceStack.RazorにはSystem.Web.Razorアセンブリバージョン3.0.0が含まれ、Microsoft.AspNet.Mvcには3.2.3が必要です.1つは他のアセンブリによって上書きされ、アセンブリのロード例外が発生します。

この回答従うことをしようとしました: ServiceStack turn on Razor intellisense support without MVC

をしてWeb.configファイルを追加しますが、これは私に別のエラーを与える: はインテリセンスの作業をするためにどのよう

を「ここにプライベートフィールド 『モデル』​​にアクセスできません」アプリケーションを破壊することなく?

答えて

3

残念ながら、VS.NET 2015デザイナーは、セルフホスト(つまり非ASP.NETプロジェクト)のRazorページの編集を適切にサポートしていないため、デザイナーのエラーをすべて取り除くことはできませんが、問題を最小限に抑えることができます最初にWeb.configにRazor設定を追加することにより、Web.config templateを使用すると、$safeprojectname$をプロジェクトの名前空間に置き換える必要があります。 Web.configは、非Webプロジェクトの動作に影響を与えません。ASP.NET Webプロジェクトに結合されたVS.NET Intellisenseにヒントを提供するためだけに使用されます。

あなたがより明示的に使用したいと思う

代わりの@model

@inherits ViewPage<ServiceStack.Host.Operation> 

これらは両方とも同じことを行うが、設計者は、明示的@inheritsと幸せです。