PDA

View Full Version : سوال: چطور یک enum بسازیم که از نوع bool و مقادیر null, false, true داشته باشد؟



sayanpro
چهارشنبه 18 مرداد 1396, 01:39 صبح
سلام دوستان من می خواهم یه همچین enum ای بسازم ولی نمیشه، به نظر شما چه راهی میشه استفاده کرد؟




public enum BuyerType : bool
{
BothPersonOrCompany = null,
PersonBuyer=false,
CompanyBuyer=true
};




با تشکر.

Mahmoud.Afrad
چهارشنبه 18 مرداد 1396, 02:29 صبح
نمیتونید. انواع مجاز در لینک زیر گفته شده
https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/enum

0verlord
جمعه 20 مرداد 1396, 12:27 عصر
حتما باید enum باشه؟ کارتون با <Nullable<bool انجام نمیشه؟

bool? BuyerType ; //=null/true/false

sayanpro
جمعه 20 مرداد 1396, 14:22 عصر
بله دوستان عزیز، حرف شما درسته. من میخواستم BuyerType به عنوان ورودی به یک متد بدم، گفتم اگر از نوع enum به متد ارسال بشه، کاربر راحتتر میفهمه تا اینکه null یا false یا true به متد ارسال کنه

Mahmoud.Afrad
جمعه 20 مرداد 1396, 18:00 عصر
بله دوستان عزیز، حرف شما درسته. من میخواستم BuyerType به عنوان ورودی به یک متد بدم، گفتم اگر از نوع enum به متد ارسال بشه، کاربر راحتتر میفهمه تا اینکه null یا false یا true به متد ارسال کنه

نمیدونم متدتون چه روندی دارد ولی کافیه یک enum ایجاد و یک پارامتر از اون در متد داشته باشید و در بدنه متد برحسب اون تصمیم بگیرید
public enum BuyerType
{
BothPersonOrCompany,
PersonBuyer,
CompanyBuyer
}

void MyMethod(BuyerType buyerType)
{
switch (buyerType)
{
case BuyerType.BothPersonOrCompany:
//...
break;
case BuyerType.CompanyBuyer:
//...
break;
case BuyerType.PersonBuyer:
//...
break;
}
}