2010-08-06 8 views
2

Je suis un programmeur web débutant. J'ai principalement codé les applications de bureau. À l'heure actuelle, j'ai créé cette application Web, dans Silverlight, qui utilise mon propre service Web pour interroger la base de données. La chose est, l'une des fonctionnalités de l'application est la possibilité d'ouvrir des fichiers PDF. Je sais que Silverlight ne vous laissera pas faire cela, mais en utilisant un IFrame sur l'application Silverlight, vous pouvez afficher une page avec un fichier PDF (en utilisant acrobat plug in). Donc, voici le problème, mon application Silverlight passe le chemin pdf vers le service Web et, en retour, le service Web créerait une nouvelle page et transmettrait la nouvelle page URI afin qu'elle puisse être affichée sur le IFrame:Créer une nouvelle instance d'une page et obtenir l'URL

page code du 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(); 
    } 
} 

code WebMethod:

ce ne retourne que l'URL du service Web. Donc la question principale est: Comment créer une instance de page et obtenir cette URL de la page?

La solution à ce pourrait être ici: http://forums.silverlight.net/forums/p/76977/372282.aspx

« Dans mon application Silverlight ouvrir un nouveau navigateur Web en passant dans la chaîne de requête mon identifiant et le processus de la page il, interrogez la db, récupérer l'objet sélectionné et rend avec les méthodes de réponse. "

Je ne sais pas comment le faire.

Toute aide est grandement appréciée.

Pedro

Répondre

0

Peut-être que cela aidera.

où votre objet silverlight est intégré mettre un iframe avec id = « XContainer »

et de votre code silverlight vient de mettre son scr au format pdf que vous essayez d'afficher

HtmlPage.Document.GetElementById("xContainer").SetProperty("src", "http://google.com"); 
+0

Merci pour votre mais je pense que cela ne résoudra pas mon problème. le fichier pdf est stocké localement dans le serveur mais il n'est pas déployé avec l'application. Puisque le service Web est dans la machine serveur, il peut accéder au fichier dans un répertoire donné (disons c: \\ test.pdf). C'est pourquoi je crée une page PDFViewer et lui passe le chemin pdf. Maintenant, comment puis-je accéder à l'URL de la page afin que mon client Silverlight le charge dans l'iframe? merci d'avance –

Questions connexes