PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : آشنایی با خصیصه ی InternalsVisibleToAttribute



آبجی
13th February 2010, 01:11 PM
اعضای internal در #C (در VB.NET با کلمه ی کلیدی Friend مشخص میشه) فقط در اسمبلی جاری قابل دسترسی هستند.
گاهی اوقات ممکنه نیاز داشته باشید که یک اسمبلی به یک اعضای یک اسمبلی دیگه که اجزای اون از نوع internal هستند دسترسی داشته باشه.
مایکروسافت دو دلیل رو بدین منظور ذکر کرده:
۱) اگر تست آزمایش واحد (Unit Testing) انجام میدید و متدهایی که به منظور Unit Testing استفاده میشن در یک اسمبلی دیگه قرار دارند و باید به اجزای یک اسمبلی که اجزای اون از نوع internal هستند دسترسی داشته باشند.
۲) اگر اجزای مرتبط به هم از یک Class Library در دو اسمبلی مختلف قرار دارند که حداقل یکی از اونها از نوع internal باشند.
در این حالت می تونید از از خصیصه ی InternalsVisibleTo استفاده کنید و کلاس یا عضو مورد نظر رو به عنوان عضوی که می تونه توسط یک اسمبلی خاص مورد استفاده قرار بگیره معرفی کنید:

[assembly: InternalsVisibleTo("AssemblyB")]

internal class AssemblyA
{
public void Test()
{
MessageBox.Show(”i’m a friend member!”);
}
}
در کدهای فوق، فقط اسمبلی با نام “AssemblyB” می تونه به اجزای اسمبلی با نام “AssemblyA” دسترسی داشته باشه.
موفق باشید.

استفاده از تمامی مطالب سایت تنها با ذکر منبع آن به نام سایت علمی نخبگان جوان و ذکر آدرس سایت مجاز است

استفاده از نام و برند نخبگان جوان به هر نحو توسط سایر سایت ها ممنوع بوده و پیگرد قانونی دارد