PDA

View Full Version : سوال: ایا امکان کپی کردن Namespace جدید تو DotNet هست ؟!



imanx7
یک شنبه 17 اسفند 1393, 20:57 عصر
سلام !
یه سوالی چند وقت مغز منو درگیر کرده ؛ اونم اینکه آیا میشه به طور مستقیم Namespace از Dll ها تووی .net اضافه کرد ؟!
همونطور که دوستان میدونن تمامی Namespace ها Assembly های Net. توو این مسیر موجود : C:\windows\Microsoft.Net
حالا میخوام بدونم آیا میشه Namespace ها و فولدر هایی حاوی Dll به این مسیر اضافه کرد و اونو تووی پروژه ها using کرد؟!
منظورم اینه ! مثلا من یه فولدری به نام ProjectTest که حاویی dll هایی است رو توو این مسیر کپی میکنم و بعد اون رو توو پروژه به صورت زیر فراخوانی

using ProjectTest

آیا این امکان هست ؟!

SabaSabouhi
یک شنبه 17 اسفند 1393, 21:47 عصر
سلام !
یه سوالی چند وقت مغز منو درگیر کرده ؛ اونم اینکه آیا میشه به طور مستقیم Namespace از Dll ها تووی .net اضافه کرد ؟!
همونطور که دوستان میدونن تمامی Namespace ها Assembly های Net. توو این مسیر موجود : C:\windows\Microsoft.Net
حالا میخوام بدونم آیا میشه Namespace ها و فولدر هایی حاوی Dll به این مسیر اضافه کرد و اونو تووی پروژه ها using کرد؟!
منظورم اینه ! مثلا من یه فولدری به نام ProjectTest که حاویی dll هایی است رو توو این مسیر کپی میکنم و بعد اون رو توو پروژه به صورت زیر فراخوانی

using ProjectTest

آیا این امکان هست ؟!

سلام
این نشون می‌ده که قبل از مطالعه شروع به کدنویسی در DotNet کردی.
دوست عزیز، تمام کدها توی DotNet داخل فضای نام ( namespace ) هستن. کدی که خودت می‌نویسی دارای یک فضای نامی هست که خودت بهش اسم دادی
مثلا MyApplication1 . حالا اگه من یه کتابخونه بنویسم و بهت بدم، برای استفاده باید فضای نامی که من استفاده کردم ( و هیچ ربطی به فولدر و حتا نام اسمبلی نداره ) رو
بالای برنامه قید کنی. مثلاً SabaSabouhit.Utility.Core.
حتا می‌تونی داخل یک Source Code چند تا فضای نام داشته باشی.

صبا صبوحی

imanx7
یک شنبه 17 اسفند 1393, 22:02 عصر
سلام
این نشون می‌ده که قبل از مطالعه شروع به کدنویسی در DotNet کردی.
دوست عزیز، تمام کدها توی DotNet داخل فضای نام ( namespace ) هستن. کدی که خودت می‌نویسی دارای یک فضای نامی هست که خودت بهش اسم دادی
مثلا MyApplication1 . حالا اگه من یه کتابخونه بنویسم و بهت بدم، برای استفاده باید فضای نامی که من استفاده کردم ( و هیچ ربطی به فولدر و حتا نام اسمبلی نداره ) رو
بالای برنامه قید کنی. مثلاً SabaSabouhit.Utility.Core.
حتا می‌تونی داخل یک Source Code چند تا فضای نام داشته باشی.

صبا صبوحی
ممنون از پاشخت دوست عزیز ولی فکر کنم نتونستم منظورم رو خوب بفهمونم !!! بزارید بگم چی توو فکرمه !
ببنید من چندتا Dll نوشتم ، و میخوام اونرو مثل خود Namespace های مانند (System.Threading) به صورت مستقیم ، تو پروژه های دیگم استفاده کنم !
مثلا System.ImanX !!
آیا این امکانش هست ؟!

SabaSabouhi
دوشنبه 18 اسفند 1393, 13:49 عصر
ممنون از پاشخت دوست عزیز ولی فکر کنم نتونستم منظورم رو خوب بفهمونم !!! بزارید بگم چی توو فکرمه !
ببنید من چندتا Dll نوشتم ، و میخوام اونرو مثل خود Namespace های مانند (System.Threading) به صورت مستقیم ، تو پروژه های دیگم استفاده کنم !
مثلا System.ImanX !!
آیا این امکانش هست ؟!

سلام
راستش باز هم خوب منظور رو نرسوندی.
بر اساس حدس و گمان پرسش رو پاسخ می‌دم.
شما اون Dll خودت رو به Referenceهای پروژه اضافه کن، و بعد بالای برنامه بزن System.ImanX و از کلاس‌های اون استفاده کن.

صبا صبوحی

imanx7
سه شنبه 19 اسفند 1393, 09:32 صبح
سلام
راستش باز هم خوب منظور رو نرسوندی.
بر اساس حدس و گمان پرسش رو پاسخ می‌دم.
شما اون Dll خودت رو به Referenceهای پروژه اضافه کن، و بعد بالای برنامه بزن System.ImanX و از کلاس‌های اون استفاده کن.

صبا صبوحی

دقیقا !!!!
خوب من نمیخوام dllــم رو به ریفرنس ها اضافه کنم !
میخوام مثل کامپوننت های Telerik ..... وقتی Using System.ImanX کردم ، به طور خودکار ریفرنسش هاش اضافه شه :لبخند:

elec60
سه شنبه 19 اسفند 1393, 11:14 صبح
کاری که اين دوستمون میخوان انجام بدن قرار دادن dll شون در GAC و یا همون Global Assembly Cache هست

imanx7
سه شنبه 19 اسفند 1393, 11:57 صبح
کاری که اين دوستمون میخوان انجام بدن قرار دادن dll شون در GAC و یا همون Global Assembly Cache هست
این کار شدنیه ؟!
و میشه انجام داد؟!
میشه بیشتر راهنمایی کنید !!

SabaSabouhi
سه شنبه 19 اسفند 1393, 12:45 عصر
دقیقا !!!!
خوب من نمیخوام dllــم رو به ریفرنس ها اضافه کنم !
میخوام مثل کامپوننت های Telerik ..... وقتی Using System.ImanX کردم ، به طور خودکار ریفرنسش هاش اضافه شه :لبخند:

سلام
دوست عزیز، using چیزی به referenceها اضافه نمی‌کنه. مگه این که یا کنترل‌های موجود توی Toolbox باشه یا این که از برنامه‌هایی
مثل Resharper استفاده کنی که این کارها رو خودشون برات انجام می‌دن.
اگه هم بخوای همون‌طور که دوست خوبمون elec60 نوشته، بری سراغ GAC یه پروسه برای Register کردن اون dllها خواهی داشت
ولی باز هم خود به خود چیزی به Referenceهای شما اضافه نخواهد شد.

صبا صبوحی