2012-10-25 139 views
0

我有以下代码,它执行一些网页重定向,然后单击一个具有JavaScript函数作为href的标签。当它被称为一个文件是下载。我的问题是我想能够下载文件而不会被提示取消,保存或打开。我正在使用IE9。WatiN从网页下载文件

using (var browser = new IE("http:url.aspx")) { 
    browser.TextField(Find.ByName("ctl00$ContentPlaceHolder1$Login1$UserName")).TypeText("cpereyra"); 
    browser.TextField(Find.ByName("ctl00$ContentPlaceHolder1$Login1$Password")).TypeText("Maxipereyra15"); 

    browser.Button(Find.ByName("ctl00$ContentPlaceHolder1$Login1$LoginButton")).Click(); 


    browser.GoTo("http://it-motivity-cmc/Movation/MyPage/MyDashboard.aspx?dynamicdashboardid=ab000000-7dea-11c9-b596-d01e04bebb94"); 

    while (browser.Eval("document.readyState") != "complete") { 
     Thread.Sleep(1000); 
    } 

    Div div = browser.Div("ctl00_ContentPlaceHolder1_wrapper_vis_zone1_1"); 
    div.Link(link => link.Text == "Export to CSV").Click(); 
} 
+0

这里有什么可以帮助你:http://stackoverflow.com/a/6184867/1113272 – t3hn00b

+0

我见过,但由于某种原因,我不能引用FileDownloadHandler。 – user541597

+0

'WatiN.Core.DialogHandlers.FileDownloadHandler'? WatiN版本? – t3hn00b

回答

0

您必须检查js函数内部,然后复制它所做的调用以仅下载文件。要查看该功能,只需打开js控制台(F12)键入不带圆括号的功能名称,即可显示功能主体。 你可能会在函数内部找到一个干净的链接。

+0

因为他想要下载文件,所以无法工作 - 无论您如何获得链接,他的问题是如何单击“保存”按钮。 – t3hn00b