我是一個初學Web程序員。我一直在編寫桌面應用程序。 現在,我已經在Silverlight中創建了這個Web應用程序,它使用我自己的Web服務來查詢數據庫。事情是,其中一個應用程序功能是打開PDF文件的能力。我知道Silverlight不會讓你這樣做,但在Silverlight應用程序的頂部使用IFrame,您可以使用de pdf文件(使用acrobat插件)顯示頁面。 所以問題在於,我的Silverlight應用程序將PDF路徑傳遞給Web服務,並且作爲回報,Web服務將創建一個新頁面並將新頁面URI傳回,以便它可以顯示在IFrame上:創建一個頁面的新實例並獲取URL
頁代碼Behing:
public partial class PDFViewer : System.Web.UI.Page
{
string Filename = string.Empty;
public Uri Uri
{
get { return HttpContext.Current.Request.Url; }
}
public PDFViewer(string filename)
{
Filename = filename;
}
protected void Page_Load(object sender, EventArgs e)
{
Response.ContentType = "Application/pdf";
Response.WriteFile(Filename); //Write the file directly to the HTTP content output stream.
Response.End();
}
}
的WebMethod代碼:
這個只返回Web服務URL。 所以主要的問題是:如何創建一個頁面實例並獲取該頁面的URL?
這個問題的解決可能會在這裏: http://forums.silverlight.net/forums/p/76977/372282.aspx
「以我的Silverlight應用程序我通過查詢字符串傳遞我的ID和網頁過程中它打開一個新的網頁瀏覽器,查詢數據庫,檢索所選擇的對象並用響應方法呈現。「
我只是不知道該怎麼做。
任何幫助,非常感謝。
Pedro
謝謝您anwser,但我認爲taht不會解決我的問題。 pdf文件本地存儲在服務器中,但未與應用程序一起部署。由於Web服務位於服務器機器中,因此它可以訪問指定目錄中的文件(假設c:\\ test.pdf)。這就是爲什麼我創建一個PDFViewer頁面並將其傳遞給PDF路徑。現在我如何訪問頁面URL,以便我的Silverlight客戶端將它加載到iframe中? 在此先感謝 – 2010-08-06 13:19:44