คุณสามารถเขียนนามสกุล ฉันเขียนครั้งหนึ่งที่ผ่านมาสำหรับการสร้างรหัสเช่น
if(someObject.stringPropertyX.Equals("abc") || someObject.stringPropertyX.Equals("def") || ....){
...
}else{
....
}
สามารถอ่านได้มากขึ้นด้วยส่วนขยายที่สามารถเขียนได้
if(someObject.stringPropertyX.In("abc", "def",...,"xyz"){
...
}else{
....
}
นี่คือรหัส :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Some.Namespace.Extenders
{
public static class StringExtender
{
public static bool In(this String thisString, params string[] values)
{
foreach (string val in values)
{
if (thisString.Equals(val, StringComparison.InvariantCultureIgnoreCase))
return true;
}
return false;
}
}
}
นี่เป็นสิ่งที่เฉพาะเจาะจงสำหรับความต้องการของฉันในเวลานั้น แต่คุณสามารถปรับเปลี่ยนและแก้ไขให้เข้ากับประเภทต่างๆ