260. Convert ChangeType

בהמשך לטיפים הקודמים,

במחלקה Convert קיימת הפונקציה ChangeType המאפשרת לנו להמיר לטיפוס נתון לפי הType שלו:

1
2
3
4
5
object theYear = Convert.ChangeType("2011",typeof (int));
Console.WriteLine(theYear.Equals(2011));// True
object theYearString = Convert.ChangeType(2011, typeof(string));
Console.WriteLine(theYearString.Equals("2011"));// True

הפונקציה הזאת יכולה להיות מאוד שימושית כאשר אנחנו מעוניינים לכתוב מעין Deserializer משלנו.

ההגבלה העיקרית כאן, היא שאין לנו יכולת לציין פרטים על ההמרה, כמו עם איזה Format string להשתמש (למשל, עבור תאריכים) ואפשרויות נוספות.

הרבה פונקציות בFramework משתמשות בזה, בעיקר פונקציות שמתעסקות עם קונפיגורציה, או פונקציות שמתעסקות בהמרות טקסט לאובייקטים.

סופ"ש מומר לטובה!

שתף