بدست آوردن لیست تمامیه Type ها در .Net

با سلام.
چند وقت پیش دنبال یه کدی بودم که بشه لیست تمامیه Type های .NET Framework رو باهاش در آورد.
جایی نتونستم پیدا کنم ، فقط با راهنماییه بچه های CodeProject فهمیدم که باید از Reflection استفاده کنم. چیزس که قبلا کار نکرده بودم .
بعد از یه دو سه روزی کار کردن و آشنا شدن با هاش این کد رو نوشتم که اسم تمامیه Type های .Net رو پیدا می کنه و اونا رو به syntax یه آرایه از string در C# در میاره و تو یه فایل کنار خود پروژه ذخیره می کنه .
حالا برا شما هم این کد رو می زارم

static string fileName = "types.txt"; static void Main(string[] args) { StreamWriter SW; SW = File.CreateText(fileName); SW.WriteLine("string[] mds = new string[] {"); SW.Write("\t\t\t\t\t");

DirectoryInfo directory = new DirectoryInfo(Environment.ExpandEnvironmentVariables("%SystemRoot%") + @"\assembly");

Assembly assembly; Type[] types;

var DLL_Files = directory.GetFiles("*.dll", SearchOption.AllDirectories);

short i = 0; int assembliesCounter = 0; int typeCounter = 0; int allAssemblies = DLL_Files.Length; int counter = 0;

foreach (var file in DLL_Files) { assembliesCounter++; try { assembly = Assembly.LoadFile(file.FullName); types = assembly.GetTypes(); typeCounter = types.Length; foreach (var type in types) { i++; typeCounter--; if (i > 10) { SW.WriteLine("\"" + type.Name.Replace("\\", "") + "\"" + ", "); SW.Write("\t\t\t\t\t"); i = 0; } if (assembliesCounter >= allAssemblies && typeCounter <= 0) SW.Write("\"" + type.Name.Replace("\\", "") + "\""); else SW.Write("\"" + type.Name.Replace("\\", "") + "\"" + ", "); counter++; } } catch (Exception ex) { Console.WriteLine(ex.Message); } }

SW.WriteLine("};"); SW.Close();

Console.WriteLine("\n{0} Types Found", counter.ToString()); Console.WriteLine("Finish"); Console.ReadKey(); }

کلمات کلیدی : لیست کلاس ها ، لیست namespace ها ، list of class namespace , C# , VB , .Net Framework

/ 2 نظر / 10 بازدید
محقق

عرض سلام و ادب خدمت شما عزیز بزرگوار شبنمی آهسته از چشمان برگ می چکد بر دامن رنگین خاک گل می افشاند به چشم آفتاب نازخندی خوابناک ناگهان از جای می خیزد نسیم شاد می رقصد میان خاکسار گفتگویی نرم می لغزد به گوش “هان بهار… ”آری بهار… سالی سرشار از خیر و برکت را برای شما آرزومندم دنيا را برايتان شاد شاد و شادي را برايتان دنيا دنيا آرزومندم

حسین

کاش لینک سلوشن رو می زاشتی راستی از برنامه ساعت که تو کد پراجکت گزاشتی خیلی ممنون خیلی جالب و خوب بود احتمالا َ توی پورژه ای که دارم کار می کنم استفاده می کنم با کمی تغییرات :)