همانطور که بایستی بدانید، برای قرار دادن مقدار پیشفرض برای یک Property در سی شارپ، میتوان بصورت زیر عمل کرد:
public string Domain { get; set; } = "FuLLKade.COM"
اما این امکان فقط در کلاسها موجود بوده و نمیتوان در Struct ها بهدلیل ماهیتشان از آن استفاده کرد. در اینجا روشی خواهیم گفت که بتوان این مشکل را حل نمود.
راه حل
ابتدا باید یک فیلد تعریف کرده و سپس حالت get و set را با توجه به آن فیلد پیادهسازی نمود. کد زیر را در نظر بگیرید:
public struct Site
{
string? domain;
public string Domain { get { return domain ?? "FuLLKade.COM"; } set { domain = value; } }
}
داخل get ویژگی Domain، بررسی کردیم که اگر فیلد domain مقداردهی شده بود، آن را برگردانده و در غیر این صورت، مقدار پیشفرضمان را برگرداند. سپس داخل set نیز مقدار جدید را درون این فیلد قرار دادیم.
به همین سادگی توانستیم برای ویژگی موجود در Struct، مقدار پیشفرض دلخواهمان را تعیین کنیم.
نظرات ثبت شده بدون دیدگاه