我想创建一个通用的“登录”方法,该方法将获得一个随机对象并应返回该对象。
public class LoginPageOne : BasePage
{
public LoginPageOne(Browser browser)
: base(browser)
{
CheckPageErrors(UserName, page);
}
public PianoBar_Obj1 Login(Browser browser, IUser username)
{
//Do something
return new PianoBar_Obj1 (browser);
}
}
public class LoginPageTwo : BasePage
{
public LoginPageTwo (Browser browser)
: base(browser)
{
CheckPageErrors(UserName, page);
}
public PianoBar_Obj2 Login(Browser browser, IUser username)
{
//Do something
return new PianoBar_Obj2 (browser);
}
}
public BasePage(Browser browser)
: base(browser)
{
browser.BrowserHelper.RunJavascriptOverideLogs();
}
我只想创建一个能够获取任何对象类型的“登录”通用方法,请注意,此方法的实现与返回类型相同。 像这样:
public T Login(T object,Browser browser, IUser username)
{
// Do something`
return new T();
}
答案 0 :(得分:2)
public T Login<T>()
where T: class, new()
{
return new T();
}
要使用PianoBar_Obj2从代码中调用此代码,只需按如下所示进行调用:
return Login<PianoBar_Obj2>();