У меня есть три класса, которые наследуются от класса, потому что я хочу, чтобы эти объекты рассматривались как базовый класс:
public class Find
{
}
public class StringFind : Find
public class DateFind : Find
public class LongFind : Find
ОК, затем я создаю массив объектов «Найти» и хочу проверитьесли каждый объект имеет тип StringFind, DateFind или LongFind, поэтому я создал что-то вроде:
protected bool CompareUnion(params Find[] f)
{
foreach (var searchL in f)
{
if (f is StringFind)
{
//do something
var a = 3;
}
}
return true;
}
почему f не может иметь тип StringFind, если StringFind наследует от этого класса?Я думал, что Visual Studio был неправ, но я никогда не достигал точки останова, и я на самом деле создаю массив объектов StringFind.