Bu nedenle, bir Enum türünde hem tamsayı hem de karakter türlerini kullanmanın kabul edilebilir bir uygulama veya kötü bir uygulama olup olmadığını merak ediyorum. Örneğin, şu anda bir ödeme işleme satıcısı sistemi ile çalışıyorum. Sabun isteğimizi arayabilir ve 1 ila 25 arasında herhangi bir yerde ödeme türleri için kimlik gönderebilir ve C, M ve O gibi karakterleri gönderebilir. Kodu okurken netlik sağlamak için bir enum kullanmak istedim, ancak bir problemim var. Bunun için de bir anahtar dava açmak istedim. Bu, bu işlem için kötü bir uygulama mı, aynı zamanda bunu bir anahtarda güvenle kullanabilir miyim yoksa sadece bir tane yapmalı mıyım ve yanlış döküm işlemek için ayrıştırmayı denemeliyim? Enum değerleriEnum değerlerini Chars ve tamsayı türlerini C# anahtarında bir anahtar deyimiyle kullanma #
Örnek aşağıdaki gibi olacaktır:
onlar kaputun altında sayısal türleridir beri gülünç uygulama sayımları için Char üyelerini kullanmak gibiinternal enum PaymentTypeEnum
{
/// <summary>
/// Payment Type Id via Phone from ACI. Note: Int32
/// </summary>
PhonePayment_IVR = '9',
/// <summary>
/// Payment Type Id via electronic from ACI. Note: Int32
/// </summary>
eCollectPayment = '5',
/// <summary>
/// Payment Type Id for CANCEL payment. Note: Char
/// </summary>
CancelPayment = 'C',
}
Neden anahtar kayıdı kullanmaya ilişkin endişeleriniz var? Etiketi veya enum değerini kullanabilirsiniz. – ryanyuyu
Bu, '(PaymentTypeEnum) '9'' yerine' (PaymentTypeEnum) 9' kullanılırsa, bu hataya yol açabilir. Bir arama yöntemini veya "char" türünü açık yapan bir sözlük tanımlamayı tercih ederim. – Douglas
Bu, "25" tutarında bir ödeme türü kimliği ile nasıl çalışır? –