3

Web アプリケーション外のサーバーのフォルダーに PDF ファイルを保存しています (セキュリティ上の理由から)。Google ドキュメントを使用してファイルをプレビューする必要があります。

<iframe src="http://docs.google.com/gview?url=????&embedded=true" 
        style="width:718px; height:700px;" frameborder="0"></iframe>

これまでは、ファイルパスを引数として指定した形式でリダイレクトすることにより、ダウンロードできるようにしていました。

string path = Request.QueryString["src"];
int index = Request.QueryString["src"].ToString().LastIndexOf("\\");
string filename = Request.QueryString["src"].ToString().Substring(index + 1);
FileStream fileStream = new FileStream(path, FileMode.Open);
int fileSize = (int)fileStream.Length;
byte[] Buffer = new byte[fileSize];
fileStream.Read(Buffer, 0, fileSize);
fileStream.Close();
Response.ContentType = ContType(path);
Response.AddHeader("content-disposition", "attachment;filename=\"" + filename);
Response.BinaryWrite(Buffer);
Response.End();

file.aspx?src=C:\...GoogleドキュメントiframeのURLの引数としてURLを追加してみました

http://docs.google.com/gview?url=file.aspx?src=C:\...

しかし、うまくいきません。

URL をストリームに割り当てる他の方法はありますか?

4

1 に答える 1