在课堂上Employee我有一些方法,工作正常.现在我想添加新方法,例如
public void ExampleMethod()
{
}
Run Code Online (Sandbox Code Playgroud)
然后我打电话给它
Employee employee = new Employee();
employee.ExampleMethod();
Run Code Online (Sandbox Code Playgroud)
ExampleMethod出现在dot之后显示的IntelliSense中,当我点击F12时它也会将我重定向到该方法,但是在启动项目时我遇到了一个错误:'Employee'不包含'ExampleMethod'的定义而且没有扩展方法'ExampleMethod '可以找到接受'Employee'类型的第一个参数(你是否缺少using指令或汇编引用?)
我不知道为什么会导致这个错误,因为所有其他早期方法都可以正常工作.有什么问题?
我在转换泛型类型时遇到问题.
例如我有课程:
public class Dog
{
}
public class Husky : Dog
{
}
public class MyWrapper<T> where T : class
{
}
Run Code Online (Sandbox Code Playgroud)
然后我想做这样的事情,但我不知道怎么做
MyWrapper<Husky> husky = new MyWrapper<Husky>();
List<MyWrapper<Dog>> dogs= new List<MyWrapper<Dog>>();
dogs.Add(husky); // how to cast husky to MyWrapper<Dog>?
Run Code Online (Sandbox Code Playgroud)
编辑:更改Animal<T>到MyWrapper<T>,所以这将是更充足的例子