C# 隐式转换到基类-Resharper显示错误

C# 隐式转换到基类-Resharper显示错误,c#,resharper,C#,Resharper,我想知道为什么Resharper 2017.1.2会显示一个错误“转换为基类”,但代码不会编译。按如下所示进行隐式转换是一种不好的做法吗 /// <summary> /// A generic range class. /// </summary> class Range<TBar> { public TBar From { get; } public TBar To { get; } public Range(TBar rangeF

我想知道为什么Resharper 2017.1.2会显示一个错误“转换为基类”,但代码不会编译。按如下所示进行隐式转换是一种不好的做法吗

/// <summary>
/// A generic range class.
/// </summary>
class Range<TBar>
{
    public TBar From { get; }
    public TBar To { get; }

    public Range(TBar rangeFrom, TBar rangeTo)
    {
        From = rangeFrom;
        To = rangeTo;
    }
}

/// <summary>
/// A specific range class.
/// </summary>
class DateTimeRange : Range<DateTime>
{
    /// <summary>
    /// Conversion to Range of DateTimeOffset...
    /// Here Resharper shows an error.
    /// </summary>
    public static implicit operator Range<DateTimeOffset>(DateTimeRange range)
    {
        return new Range<DateTimeOffset>(range.From, range.To);
    }

    public DateTimeRange(DateTime rangeFrom, DateTime rangeTo) : base(rangeFrom, rangeTo)
    {
    }

    // Some DateTime specific methods...
}
//
///泛型范围类。
/// 
等级范围
{
来自{get;}的公共TBar
要{get;}的公共TBar
公共范围(TBar范围从,TBar范围到)
{
From=rangeFrom;
To=范围To;
}
}
/// 
///特定的范围类别。
/// 
类DateTimeRange:范围
{
/// 
///转换到DateTimeOffset的范围。。。
///这里Resharper显示了一个错误。
/// 
公共静态隐式运算符范围(DateTimeRange范围)
{
返回新范围(Range.From、Range.To);
}
公共DateTimeRange(DateTime rangeFrom,DateTime rangeTo):基(rangeFrom,rangeTo)
{
}
//一些特定于日期时间的方法。。。
}
这个装置背后的想法是能够进行以下铸造:

var foo = new DateTimeRange(DateTime.MinValue, DateTime.MaxValue);
var baz = (Range<DateTimeOffset>) foo;
var foo=new DateTimeRange(DateTime.MinValue,DateTime.MaxValue);
var baz=(范围)foo;

DateTimeRange
Range
继承时,对其进行强制转换是毫无意义的,不会添加任何功能。你为什么想要这个?@HimBromBeere:No,
DateTimeRange
来自
Range
,而不是
Range