«as string» не является синонимом «ToString ()».Вы используете оператор «как» и случайно передали ему строку как тип.
Определение оператора as:
Замечания
Оператор as похож на приведение, за исключением того, что он возвращает ноль при ошибке преобразования вместо вызова исключения.Более формально, выражение в форме:
выражение в качестве типа эквивалентно:
выражение в типе?(тип) выражение: (тип) null