HttpPostedFileBaseを使用してMVC3(C#)でファイルをアップロードできますが、アップロードファイルについて詳しく知りたいのですが...
- 取得する方法
ファイルサイズ
- 取得する方法
ファイルタイプ
- ファイルの種類でファイルのアップロードをフィルタリングするにはどうすればよいですか?
私を助けてください
HttpPostedFileBaseを使用してMVC3(C#)でファイルをアップロードできますが、アップロードファイルについて詳しく知りたいのですが...
ファイルサイズ
ファイルタイプ
私を助けてください
ファイルサイズ
file.ContentLength
ファイルがHttpPostedFileBase
可変である場所を使用します。
ファイルタイプ
ファイル名の拡張子を使用することもできますが、100%信頼できるわけではありません。防弾ソリューションが必要な場合は、ヒューリスティックを使用する必要があります。たとえば、アップロードされたファイルの内容を見て、そのタイプを推測してみてください。たとえば、既知の画像形式をテストするには、次の手法を使用できます。また、カスタム検証属性を使用した既知の画像形式に対する検証についての別の投稿を書きました。
ファイルの種類でファイルのアップロードをフィルタリングするにはどうすればよいですか?
HTML5は、コンテンツタイプの指定をサポートしています。
<input type="file" name="file" accept="image/*" />
ブラウザがHTML5をサポートしていない場合は、Flashなどの他のテクノロジを使用する必要があります。クライアントブラウザの機能をテストし、段階的にフォールバックすることで、この機能を提供するUploadifyやPluploadなどの既存のプラグインを使用できます。
ファイル入力ボックスの内容をフィルタリングするために、たとえばIE7のネイティブHTMLとJavaScriptでできることはまったくありません。