در تزريق تعلق كانستراكتور در طراحي اپليكيشن پروژه هاي NET/.NET Core. ، يك پروسه سه مرحله اي براي اضافه كردن تعلق تازه به يك كلاس وجود داراست.
1. يك فيلد private readonly در كلاس، با يك پيشوند خط زير نوشته روي اسم متغير مي سازيم
2. كانستراكتور را براي پذيرفتن به عبارتي نوع دستكاري ميكنيم، ولي فارغ از پيشوند اسم پارامتر
3. فيلد Private Readonly را ست ميكنيم تا پارامتر ارسال گرديده در كانستراكتور باشد
در غايت، چيزي مشابه بدين را ميخواهيم:
public class UserService{private readonly IUserRepository _userRepository;
public UserService(IUserRepository userRepository){_userRepository = userRepository;}}بهتر، دست كم اين پروسه پيش از اين به كار گيري ميشدهاست. اينك يكسري سالي ميباشد كه ما از يك ترفند خير در ويژوال استوديو به كار گيري ميكنيم تا بيشتر اين امور را براي ما اعمال دهد.
خصوصيت ساختوساز اتومات متغيرهايي كه به توليدكننده ارسال ميگردند، به صورت پيش فرض در ويژوال استوديو فعال ميباشد، با اين درحال حاضر private readonly با تفاهم نامه نامگذاري خط زير نوشته نيست (كهاين قضيه پاره اي آزاردهنده ميباشد چون اين تفاهم نامه در حال حاضر در استانداردهاي خويش مايكروسافت براي كد سيشارپ وجود دارااست!).
براي اضافه كردن اين قضيه، ما بايستي شغل هاي ذيل را در ويژوال استوديو اعمال دهيم. مسير ظريف پيكربندي بهاين شكل ميباشد:
Tools => Options => Text Editor => C# => Code Style => Naming
اين مسير مي بايست شمارا بدين ورقه برنده شود:
اولي كاري كه مي بايست جاري ساختن دهيم كليك بر روي دكمه " Manage naming styles" ميباشد، آنگاه بر روي به علاوه خرد كليك فرمائيد تا اضافه خواهد شد. ما مي بايست آن را مانند اين مالامال كنيم:
ما مي خواهيم اين را در نمونهمان اضافه كنيم، ما يك فيلد camelCase را با پيشوند خط زير نوشته اعمال ميدهيم، البته در صورتيكه شما از تفاهم نامه نامگذاري خودتان استعمال مي كنيد، مي توانيد اين فعاليت را نيز در اينجا جاري ساختن دهيد. به اين ترتيب درصورتيكه از پيشوند خط زير نوشته استعمال نكنيد، يا اين كه از kebab casing (مثل user-login-count) به كار گيري نماييد، يا اين كه از snake casing (مثل user_login_count) به كارگيري فرماييد، در واقع مي توانيد آن را در اينجا تهيه و تنظيم فرماييد.
بعد از آن در كاغذ نامگذاري (Naming)، خصوصيات را براي Private يا اين كه Internal، با استعمال از استايل fieldname_، اضافه نماييد. تمامي اين طريق را تا بالا ببريد:
و فعاليت ما به آخر رسيد!
فعلا كافي ميباشد به راحتي پارامترها را به كانستراكتور اضافه فرمائيد و موشواره را به سمت چپ پنچره كد ببريد تا آيتم Quick Actions ظواهر خواهد شد و از آيتم " Create and Assign Field" استعمال نمائيد.
شما در واقع ميتوانيد اين شغل را براي بخش اعظمي از گونه هاي ديگر فيلدها، پارامترها، حوادث و غيره جاري ساختن دهيد، و مي توانيد آحاد قراردادهاي نامگذاري را به دلخواه خويش تنطيم فرمائيد.
سه شنبه ۳۰ فروردین ۰۱ ۱۱:۳۱ ۹ بازديد
تا كنون نظري ثبت نشده است