IIS
で実行されるASP.Net MVC
アプリケーションがあります。通常の(Controller-Action-View
)プロセスを経ることなく、クライアントがフォルダ内の特定のファイルに直接アクセスできるようにすることは可能ですか?ASP.Net MVCは、特定のファイルへの明示的なルーティングを許可します。
言ってやるが、私は、ドメイン名を持っている:www.example.com
とファイルパスはドット'.'
せずに、あなたはController
という名前Sample
と作成することができ、~/.Sample/SubFolder/Filename
www.example.com
今
に対する(ドットSample
前'.'
に注意してください)ですAction
という名前のSubFolder
は、引数Filename
をとり、Views
フォルダにSubFolder View
を返します。しかし、このフォルダにはドットがあります。
だから、私はすでにwww.example.com
に.Sample/SubFolder
フォルダに相対ファイルFilename
を置くと、次のエラーをwww.example.com/Sample/Filename
を書き込むことによって、それをアクセスしようとしたとき、アプリケーションが直接
www.example.com/.Sample/SubFolder/Filename
を書き込むことによってFilename
コンテンツを表示したいです示されている:
サーバーエラー
404 - ファイルまたはディレクトリがFOUありませんnd。
あなたが削除された可能性があります探し ある資源、その名前が変更された、または一時的に利用できない です。
IIS
を使用する解決策が許容されます。
あなたは 'SampleController'のコントローラメソッドを作成し、特定のアクション名を省略し、それのためのルートなので、' /サンプルを作成することができます/ someFileName'は 'publicActionResult XXX(string fileName)'にルーティングします。 –
@StephenMueckeこれは私が通常行うものですが、 'Sample'は実際には' Sample'ではありません。 ' - >これは通常のコントローラメソッドではできません。 – Ian
'dot'を扱うための情報については、[この回答](http://stackoverflow.com/questions/11728846/dots-in-url-causes-404-with-asp-net-mvc-and-iis)を参照してください。しかし、私は '/ .Sample/Filename'の意味を理解していません(ドットはどこから来て、フォルダ名は' .Sample'ですか?) –