تفاوت عملگر as و (type)
باید دانست که:
برای تبدیل صریح نوع داده ها به یکدیگر دو راه وجود دارد
- استفاده از عملگر as
- استفاده از عملگر (Type)
تفاوت مهمی که بین این دو روش وجود دارد این است که در روش اول، اگر تبدیل قابل انجام شدن باشد، نتیجه داده ی تبدیل شده است و اگر تبدیل غیر قابل انجام شدن باشد نتیجه null است. اما در روش دوم اگر تبدیل غیر قابل انجام شدن باشد، یک exception از نوع InvalidCastException ارسال می شود.
نحوه ی استفاده از هر دو روش:
Type1 varname1 = new Type1([args]);
Type2 varname2 = (Type2) varname1;
Type1 varname1 = new Type1([args]);
Type2 varname2 = varname1 as (Type2);