Dropbox から直接ファイルをダウンロードしたい.Dropbox から直接ダウンロードしたいファイルのコンテンツを取得できます.ストリーム経由でブラウザにファイルを送信できません. 次の例外: タイプ 'System.UnauthorizedAccessException' の例外が mscorlib.dll で発生しましたが、ユーザー コードで処理されませんでした
追加情報: パス 'C:\Program Files (x86)\IIS Express\FirstLab_1.pdf' へのアクセスが拒否されました。(FileStream fileStream = new FileStream(filename, FileMode.Create)) を使用する行で
以下は私のコードです:
public FileStreamResult Download(string bkpath)
{
string bookname = bkpath;
var accessToken = new OAuthToken("d2iwy26brzqhetr0", "xxxxxxxxxxxx");
var api = new DropboxApi(ConsumerKey, ConsumerSecret, accessToken);
var file = api.DownloadFile("dropbox", bookname);
string path = file.Path;
string filename = Path.GetFileName(path);
// Create random data to write to the file.
byte[] dataArray = new byte[file.Data.Length];
new Random().NextBytes(dataArray);
using (FileStream fileStream = new FileStream(filename, FileMode.Create))
{
// Write the data to the file, byte by byte.
for (int i = 0; i < dataArray.Length; i++)
{
fileStream.WriteByte(dataArray[i]);
}
// Set the stream position to the beginning of the file.
fileStream.Seek(0, SeekOrigin.Begin);
// Read and verify the data.
for (int i = 0; i < fileStream.Length; i++)
{
if (dataArray[i] != fileStream.ReadByte())
{
Response.Write("Error writing data.");
}
}
return new FileStreamResult(fileStream, "application/pdf");
}
}
長い間この例外を解決しており、解決策を得ることができなかったため、ファイルをドロップボックスから直接ダウンロードするのを手伝ってください。