Windows Azure ASP.NET MVC3 Webアプリでのスパークビューのレンダリング

StackOverflow https://stackoverflow.com/questions/5007162

  •  14-11-2019
  •  | 
  •  

質問

私はSpark 1.5 View Engineを搭載したASP.NET MVC3でWebアプリケーションを構築しました。次の標準エラー画面が表示されます。

The view 'Logon' or its master was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/Account/Logon.aspx
~/Views/Account/Logon.ascx
~/Views/Shared/Logon.aspx
~/Views/Shared/Logon.ascx
~/Views/Account/Logon.cshtml
~/Views/Account/Logon.vbhtml
~/Views/Shared/Logon.cshtml
~/Views/Shared/Logon.vbhtml
Account\Logon.spark
Shared\Logon.spark
.

SparkはWebforms / Razorと同じフォルダを検索していないようです(〜/ views prefixはありません)が、これがSparkで設定されている場所が見つかりません。

スタートアップコードに次のものを追加しました。

settings.AddViewFolder( ViewFolderType.VirtualPathProvider,new Dictionary<string, string> { { "virtualBaseDir", "~/Views/" } } );
.

...しかし変化はありません。盲目的に明らかな何かが欠けているのを感じるのを助けることはできません。

役に立ちましたか?

解決

~/Views/仮想パスプロバイダを追加するべきではないはずなので、慣例によって自動的に起こり、上記の検索パスは2つのビューエンジン(かみそりと火花)の出力だけでわずかに異なる2つのビューエンジンの出力です。 Sparkは、Viewsが既にAccount\Logon.sparkフォルダにあると表示されているときに、既にそれが既にそれを既にそれを持っています。

パッケージと展開時に、スパークビューが実際にはAzureにコピーされていないという感覚があります。それは彼らがそこにある前にMVC3 DLLと似ています、あなたは彼らにアクセスするためにローカルにコピーするように設定しなければなりませんでした。

azureパッケージの名前を.zipファイルに名前を変更して、ビューがコンテンツの一部として含まれているかどうかを確認するために開きます。そうでない場合は、ソリューションエクスプローラでSparkファイルの1つを強調表示してから、プロパティを確認してください。 ViewsCopy to Output Directoryに設定して、Azureプロジェクトを構築して再パッケージ化します。

プロジェクト内のあなたのローカルCopy Alwaysフォルダには、検証に含まれているスパークビューを含むビューフォルダもあります。

そのパッケージを試してアップロードして、それがトリックをするかどうかを確認してください。

助けを願って
rob

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top