Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static class InvoicePaymentMethodExtensions
- {
- public static bool IsUndefined_WithEnumIsDefined(this InvoicePaymentMethod paymentMethod)
- {
- if (paymentMethod == InvoicePaymentMethod.Undefined)
- {
- return true;
- }
- var isDefined = Enum.IsDefined(typeof(InvoicePaymentMethod), paymentMethod);
- return !isDefined;
- }
- public static bool IsUndefined_WithComparingAllValidValuesDirectly(this InvoicePaymentMethod paymentMethod)
- {
- if (paymentMethod == InvoicePaymentMethod.Undefined)
- {
- return true;
- }
- return
- paymentMethod != InvoicePaymentMethod.AutoGiroNorway &&
- paymentMethod != InvoicePaymentMethod.Collection &&
- paymentMethod != InvoicePaymentMethod.Common &&
- paymentMethod != InvoicePaymentMethod.Combined &&
- paymentMethod != InvoicePaymentMethod.PrePaid &&
- paymentMethod != InvoicePaymentMethod.Compensation &&
- paymentMethod != InvoicePaymentMethod.AvtaleGiro &&
- paymentMethod != InvoicePaymentMethod.AvtaleGiroSent &&
- paymentMethod != InvoicePaymentMethod.AvtaleGiroSentNoMsg &&
- paymentMethod != InvoicePaymentMethod.AvtaleGiroDeleted &&
- paymentMethod != InvoicePaymentMethod.AvtaleGiroOcr &&
- paymentMethod != InvoicePaymentMethod.ManualPrint &&
- paymentMethod != InvoicePaymentMethod.SmallAmount &&
- paymentMethod != InvoicePaymentMethod.Salary &&
- paymentMethod != InvoicePaymentMethod.Banker &&
- paymentMethod != InvoicePaymentMethod.Order &&
- paymentMethod != InvoicePaymentMethod.Invoice &&
- paymentMethod != InvoicePaymentMethod.ChequeAgent &&
- paymentMethod != InvoicePaymentMethod.DebtInsuranceClaim;
- }
- private static HashSet<InvoicePaymentMethod> _allDefinedValues;
- static InvoicePaymentMethodExtensions()
- {
- _allDefinedValues = new HashSet<InvoicePaymentMethod>(Enum.GetValues(typeof(InvoicePaymentMethod)).Cast<InvoicePaymentMethod>());
- }
- public static bool IsUndefined_WithHashSet(this InvoicePaymentMethod paymentMethod)
- {
- if (paymentMethod == InvoicePaymentMethod.Undefined)
- {
- return true;
- }
- return !_allDefinedValues.Contains(paymentMethod);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment