我得到
CS0175 Use of keyword 'base' is not valid in this context
我的单元测试用例项目出错。
我的代码就是这样的:
实现接口的类
public interface iUtility
{
void Print();
}
public class Utility: iUtility
{
public void Print()
{
Console.Write("Print");
}
}
使用实用程序类和派生类的基类
public class BaseCls
{
private iUtility _iUtility;
public BaseCls()
{
_iUtility = new Utility();
}
public BaseCls(iUtility iUtility)
{
_iUtility = iUtility;
}
}
public class DerivedCls : BaseCls
{
public void PrintSomething()
{
Console.Write("Print Something");
}
}
在我的单元测试项目中,我正在测试派生类并尝试传递实用程序类的实例。为什么我现在这样做可能没有意义,但我计划使用unity框架并使用ioc注入不同的依赖项。
我并不是为了简洁而显示所有代码。
单元测试项目中发生错误
[TestClass]
public class UnitTest1
{
public void TestInitialize()
{
//I want to pass instance of utility class here
iUtility obj = new Utility();
DerivedCls cls = new DerivedCls(): base(obj);
}
[TestMethod]
public void TestMethod1()
{
}
}
我需要做什么来修复这个错误?我想通过构造函数从派生类传递实用程序类的实例。