2011-10-06 87 views
0

我需要克隆的浏览器实例浏览器实例,在华廷IE是共享资源,这使得很难保存以前的浏览器实例如何克隆在华廷

var browser = new IE(http://www.stackoverflow.com); 

var copybrowser = browser; 

browser.goto("http://www.superuser.com"); 

console.WriteLine(browser.Uri); 
console.WriteLine(copybrowser.Uri); 

output: 
http://www.superuser.com 
http://www.superuser.com 

在这种情况下,我需要存储以前例如,我已经看到了华廷克隆的方法,但我无法记得,没有任何一个如何解决这个问题,我需要得到浏览器的前一个实例

+0

有没有人有任何线索? –

+0

就你的情况而言,'copybrowser'只是'browser'指向的同一个对象的引用,所以这些显然是相同的。我甚至不确定是否有可能在WatiN中创建一个现有的浏览器实例的克隆,因为当你做'新的IE(...)'它会启动一个新的实例,这将是一个麻烦“复制”您现有浏览器实例的所有状态(您可能在某处导航,填写大量表单域等)。但更有趣的是:_why_你想这样做吗?这听起来更像是你可能试图以错误的方式解决问题... – Nailuj

+0

可能是我在做错误的方式......但我实际上需要这种方法...即使现在我没有找到任何正确的方法..... –

回答

0

只需创建与浏览器属性的类

public class Session 
{ 
    public Browser browser { get; set; } 
    ... 
    ... 
} 

在这种情况下,您可以在每个实例都有自己的浏览器实例时创建多个Session实例。

+0

可能是我需要做更多的研究上述方法...我会试一试...并让你知道 –