我想有一个限制为4-5个值(ex: "Insert", "update", "delete", "check"
)的字符串,但是没有其他值期望可以将上述值分配给该字符串(类似于true
和{{1} }在false
中)
但我想知道是否有可能不检查字符串是否是像这样的值之一:
bool
但更像
//not what i want
switch(str){
case "update":
isgoodvul=true;
break;
case "delete":
//(and so on).....
}
答案 0 :(得分:0)
创建一个HashSet来存储您的白名单,并检查输入是否在白名单中,如下所示:
var whitelist = new HashSet<string>()
{
"insert",
"update",
"delete",
"check"
};
然后按如下所示使用:
bool isgoodvul = whitelist.Contains(str);
答案 1 :(得分:0)
您可以使用枚举来获取所需的行为。定义这个:
enum MyAction
{
insert = 0,
update =1,
delete = 2,
check = 3
}
然后按如下方式使用它:
Enum action = MyAction.update;
switch(action){
case(MyAction.insert)
//Do insert
case(MyAction.update)
//Do update
...
}