クライアントコンポーネントとしてAngularJS Single Page Appを使用し、サーバーコンポーネントとしてSelf-Host ServiceStack RESTful APIを使用して、クライアント/サーバーソリューションを構築しています。単一のVisual Studioコンソールアプリケーションプロジェクトには、AngularJSコンポーネント用のHTMLおよびJavaScriptファイルと、ServiceStack AppHostのブートストラップ用のC#クラス(Visual Studioプロジェクトを分離するためのインターフェイスとサービスの責任を委譲しています)があります。HTML5 pushstate URLをサポートするために、ServiceStack FallbackRoute属性で動作するAngularJSを取得するにはどうすればよいですか?
すべてのHTMLファイルとJavaScriptファイルに「ビルドアクション」が「なし」、「出力ディレクトリにコピー」が「それ以上コピーする」に設定されています。
サイトのURLに「#」を付けて準備している限り、すべてがうまく機能しています。私はHTML5 pushstate URLを使用してこれを排除したいと思います。
実際には、存在しないルートが要求されるたびに、デフォルトのシングルページアプリケーションのHTMLシェルページを提供するようにServiceStackを説得する必要があります。この目的のために正確に追加されたと思われるFallbackRoute属性available in ServiceStackがあります。
ただし、使用方法がわかりません。私は同様の質問here、hereとhereを求める人々を見つけました。しかし、新しいFallbackRouteアトリビュートが到着する前に、答えはすべてでした。
本質的に、FallbackRoute属性を使用して、存在しないルートへのリクエストが単一の静的HTMLページにリダイレクトされるようにする方法の簡単で完全な例を探しています。
これはすべて非常にクールです。しかし、もし私がそうする必要がなければ、Razor Pluginを追加する必要はありません。私は単一の静的なHTMLページを使用しています。フォールバックルートを追加するためだけに、Razorテンプレートエンジンを追加する必要があると思われます。 – Holf
「剃刀なし」のオプションを追加しました –
非常にいいですね...後で試してみましょう。ありがとう! – Holf