В чем различия между методами преобразования ToXXXX и AsXXXX?
Существует ли какая-либо смысловая разница между методами преобразования ToXXXX и методами преобразования AsXXXX в платформе .NET?
Примерами таких методов являются Object.ToString и Enumerable.AsEnumerable<T>.
Ответ 1
Если метод возвращает тот же экземпляр, но отлитый другим типом, используйте метод AsXXX.
Если метод связывает новый экземпляр несвязанного типа с использованием данных объекта, используйте метод ToXXX.