0

URLの内容に基づいて特定のアクションを実行するプログラムを作成しています。コンテンツタイプを判別するための最良の方法は何ですか?

//擬似コード

WebClient c = new WebClient();
var data = c.DownloadData("http://mysite.com/download/2938923");
//var dataType = get data type

switch(dataType)
{
    case "pdf":
       //Run PDF
       break;
    case "doc":
       //Run Word
       break;
}
4

1 に答える 1

1

MIME タイプ (ContentTypeリクエストと共にヘッダーとして返される) を使用します。この方法は標準に準拠しています。

string contentType = (c.ResponseHeaders[HttpResponseHeader.ContentType] ?? "").ToLower();
switch(contentType)
{
    case "application/pdf":
        // Run PDF
        break;
    case "text/plain":
        // Text file
        break;

    // etc ...
}
于 2012-09-07T23:16:59.350 に答える