2016-05-19 20 views
15

したがって、ASP.NET Core RC2を使用するようにアプリケーションを更新しました。私は、Visual Studioを使用してそれを公開して、私のエリアが公開されていないことに気づい:ASP.NET Core RC2エリアが公開されていません

このスナップショットはsrc\MyProject\bin\Release\PublishOutputからである:

enter image description here

そしてここでは、Visual StudioでAdminという名前の、私のエリアです:

enter image description here

私はステップが何か不足していますか?

デフォルトのテンプレートに含まれていない Areasフォルダが含まれるように project.jsonのご publishOptionsセクションを設定する必要が

答えて

21

例:

"publishOptions": { 
    "include": [ 
    "wwwroot", 
    "Views", 
    "appsettings.json", 
    "web.config", 
    "Areas" 
    ], 
    "exclude": [ "bin" ] 
} 

更新

したい場合あなたのコントローラと他の.csファイルが含まれていないことを確認するには、excludeプロパティをブラックリストに入れてそのような:あなたはより制限のセキュリティを希望する場合

"publishOptions": { 
    "include": [ "wwwroot", "Views", "appsettings.json", "web.config", "Areas" ], 
    "exclude": [ "**.user", "**.vspscc", "**.cs", "bin" ] 
} 

、あなたは全体の地域を含め、単にホワイトリスト.cshtmlファイルの代わりがそうのようにフォルダができます。

"publishOptions": { 
    "include": [ "wwwroot", "**.cshtml", "appsettings.json", "web.config" ], 
    "exclude": [ "bin" ] 
} 

**.cshtmlのようなワイルドカードを使用する場合は、binディレクトリを含むすべてのサブディレクトリのすべてのファイルが含まれますので注意してください。以前のビルドのbinフォルダにビューがある場合は、パスが長くなりすぎるまで、新しいビルド出力の中に再度複製されます。

+0

の下のオプションを公開"Areas/**/Views/**/*.cshtml""Areas/ * /.cshtml"を追加する必要がありますこれは確かに 'Areas'フォルダを公開するが、それはまた' .cs'ファイルとエリア内の 'Controllers'フォルダを公開します!それは欲しくない! – VSG24

+0

Areasフォルダ全体を含めるのではなく、ホワイトリストのみのcshtmlファイルの詳細を含めるように私の答えを更新しました –

+2

Areasフォルダ内にあるすべてのViewsフォルダを含めるには、This - Areas/**/Viewsを使用します。このエリアを使用する回避策としてhttps://github.com/dotnet/cli/issues/3286で説明されているバグのためにRC2と1.0で動作します/ **/*。cshtml – Sergey

0

領域を追加すると、.csファイルを含むすべてがコピーされます。

はそうだけではなく"Areas"

関連する問題