ComparisonHelperTryCompareWithConversion - метод

Сравнивает объекты с учётом возможных преобразований типов. Для сравнения используется интерфейс IComparable, который должен быть реализован хотя бы одним из заданных объектов.

Порядок переданных аргументов определяет порядок возможных преобразований типов.

Definition

Пространство имён: Tessa.Platform
Сборка: Tessa (в Tessa.dll) Версия: 4.0.4
C#
public static int? TryCompareWithConversion(
	Object? first,
	Object? second,
	ComparisonHelperComparisonMode comparisonMode = ComparisonHelperComparisonMode.SimilarTypesOnly
)

Параметры

first  Object

Первый сравниваемый объект. Хотя бы один из сравниваемых объектов должен реализовывать интерфейс IComparable.

Тип объекта second будет преобразован в тип объекта first в первую очередь, если first реализует интерфейс IComparable. Если это преобразование, а затем обратное не удалось, то возвращается null.

second  Object

Второй сравниваемый объект. Хотя бы один из сравниваемых объектов должен реализовывать интерфейс IComparable.

Тип объекта first будет преобразован в тип объекта second только после того, как обратное преобразование не удалось, но при условии, что second реализует интерфейс IComparable.

comparisonMode  ComparisonHelperComparisonMode  (Optional)
Способ сравнения объектов.

Возвращаемое значение

NullableInt32

0, если объекты равны с учётом возможных преобразований типов.

отрицательное число, если first меньше, чем second, с учётом возможных преобразований типов.

положительное число, если first больше, чем second, с учётом возможных преобразований типов.

null, если объекты имеют несовместимые типы, не реализуют интерфейс IComparable или один из объектов равен null, в то время как второй объект не равен null.

Заметки

Метод не учитывает ситуацию, когда объекты могут сравнивать себя с объектами других типов. Для обработки такой ситуации достаточно в параметре comparisonMode указать DifferentTypes.

См. также