Вы говорите об операции приведения C # к утилитам преобразования .NET
- C # Уровень языка приведение использует круглые скобки - например, (int) - и поддержка преобразования для него ограничена, полагаясь на неявную совместимость между типами или явно определенные инструкции разработчика с помощью операторов преобразования .
- В .NET Framework существует множество методов преобразования, например, System.Convert , чтобы разрешить преобразование между одинаковыми или разнородными типами данных.
Синтаксис
(Casting) работает с числовыми типами данных, а также с «совместимыми» типами данных. Под совместимым подразумеваются типы данных, для которых существует связь, устанавливаемая посредством наследования (то есть базовых / производных классов) или посредством реализации (то есть интерфейсов).
Приведение может также работать между разнородными типами данных, для которых определены операторы преобразования .
Класс System.Convert , с другой стороны, является одним из многих доступных механизмов для преобразования вещей в общем смысле; он содержит логику для преобразования между разнородными, известными типами данных, которые можно логически изменять из одной формы в другую.
Преобразование даже охватывает некоторые из тех же оснований, что и приведение, позволяя преобразование между похожими типами данных.
Помните, что язык C # имеет свой собственный способ выполнения некоторых действий.
А базовый .NET Framework имеет свой собственный способ работы, не говоря уже о любом языке программирования.
(Иногда они совпадают в своих намерениях.)
Думайте о приведении как о функции уровня языка C #, которая более ограничена по своей природе, и о преобразовании через класс System.Convert в качестве одного из многих доступных механизмов в .NET Framework для преобразования значений между различными видами.