نقل قول نوشته شده توسط r.kiani
که اتفاقا من دیدم بیشتر از این دومی استفاده می شه. شاید به خاطر این که بعضیا از casting خیلی خوششون نمیاد. به خاطر خاطره بدی که از boxing و unboxing دارن
کار درستی می کنند!
دستوراتی که در یک زبان برنامه نویسی وجود داره بر اساس عشق و حال برنامه نویس عمل نمی کنند و قاعده، قانون و کاربرد خاص خودشون رو دارند.
در #C دو نوع Casting وجود داره و در VB.NET سه نوع.
شکل ساده ی Casting در #C که به شکل type) object) نوشته میشه، در صورتی که موفق نشه object رو به type تبدیل کنه و سعی در استفاده از شیء برگشت داده شده داشته باشید باعث بروز خطا میشه.
به همین دلیل پیشنهاد میشه که همیشه از کلمه ی کلیدی as استفاده بشه تا با بررسی شی برگشت داده شده با مقدار null، صحت یا عدم صحت Casting بررسی بشه.

موفق باشید.

پ.ن: در VB.NET از تابع TryCast بدین منظور استفاده میشه.