【问题标题】:Atata iframe SwitchTo method compile error : Using generic type requires 1 type argumentAtata iframe SwitchTo 方法编译错误:使用泛型类型需要 1 个类型参数
【发布时间】:2018-09-01 03:10:46
【问题描述】:

我在Class1下创建了一个Frame控件-Frame1

public Frame<_> Frame1 { get; private set; }

并为框架页面定义Class2

public class Class2<TPage> : Page<TPage> where TPage : Page<TPage>

当我调用Frame1.SwitchTo&lt;Class2&gt;() 时出现编译错误:

使用泛型类型需要 1 个类型参数

有没有办法解决这个问题?

我像上面一样定义Class2,因为我想定义继承Class2的其他类。

【问题讨论】:

    标签: c# automated-tests ui-automation atata


    【解决方案1】:

    如果您的Class2 页面对象类型是通用的基本页面对象,那么它不能直接传递给SwitchTo 方法。你只能通过完整的课程。例如,您可以创建非泛型 Class2 并传递它。

    // Base page object.
    public class Class2<TOwner> : Page<TOwner> where TOwner : Class2<TOwner>
    {
    }
    
    public class Class2 : Class2<Class2>
    {
    }
    
    public class AnotherClass2 : Class2<AnotherClass2>
    {
    }
    

    这将允许您将Class2 传递给SwitchTo 方法:

    Frame1.SwitchTo<Class2>()
    

    Frame1.SwitchTo<AnotherClass2>()
    

    【讨论】:

      猜你喜欢
      • 2021-10-24
      • 2023-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多