小编use*_*274的帖子

当泛型类型匹配采用该类型的重载方法时,Visual Studio 2015不会编译

我的项目在VS 2013中编译,但不在VS 2015中编译.下面的代码重现了编译问题.Validator类实际上是在第三方程序集中,因此我无法更改实现.require类是本地类,但我不想更改实现,因为我将不得不更改许多验证逻辑.下面是在VS 2015中无法编译的代码.

public abstract class Validator<T> : Validator
{
    public override void DoValidate(object objectToValidate)
    {

    }
    protected abstract void DoValidate(T objectToValidate);
}

public abstract class Validator
{
    public abstract void DoValidate(object objectToValidate);
}

public abstract class ValidatorBase<T> : Validator<T>
{
    protected override void DoValidate(T objectToValidate)
    {

    }
}

public class Required : ValidatorBase<object>
{

}
Run Code Online (Sandbox Code Playgroud)

这个编译问题有解决方法吗?任何帮助,将不胜感激.

错误:

Severity  Code    Description                                                                                     Project  File        Line

Error     CS0534  'Required' does not implement inherited abstract member 'Validator<object>.DoValidate(object)'           Program.cs  38

c# visual-studio visual-studio-2015

11
推荐指数
1
解决办法
413
查看次数

标签 统计

c# ×1

visual-studio ×1

visual-studio-2015 ×1