Почему System.Convert имеет ToDateTime, который принимает DateTime?

//
// Summary:
//     Returns the specified System.DateTime object; no actual conversion is performed.
//
// Parameters:
//   value:
//     A date and time value.
//
// Returns:
//     value is returned unchanged.
public static DateTime ToDateTime(DateTime value);

Почему System.Convert имеет ToDateTime, который принимает DateTime?

В документации по методу указано, что значение остается неизменным.

Ответ 1

Конвенция, предсказуемость и потому что IConvertable определяет метод ToDateTime.

Полагаю, что под обложками System.Convert просто пробегает все комбинации классов IConvertable.

Ответ 2

Фактический код действительно:

public static DateTime ToDateTime(DateTime value)
{
  return value;
}

Это подтверждает, что значение не будет изменено. Существует много методов преобразования. Я думаю, что он существует только потому, что он должен принимать все примитивные объекты в подписях.

т.е. при использовании отражения, если бы это было неожиданно, если преобразование из DateTime в DateTime не поддерживается.