具有特定值的C#对象构造函数
我希望能够只允许自定义对象方法使用某些值。我想到的第一个例子是VB msgbox和您可以选择的一组按钮所使用的特定值具有特定值的C#对象构造函数,c#,parameters,constructor,C#,Parameters,Constructor,我希望能够只允许自定义对象方法使用某些值。我想到的第一个例子是VB msgbox和您可以选择的一组按钮所使用的特定值 MsgBox("Message", vbYesNo,"title") 如何在C#中对自定义对象执行同样的操作 该方法将根据发送的值搜索特定区域 object.method(SearchArea1); object.method(SearchArea2); 我希望能够键入SearchArea1或SearchArea2(不作为字符串),就像您使用vbYesNo、vbCanc
MsgBox("Message", vbYesNo,"title")
如何在C#中对自定义对象执行同样的操作
该方法将根据发送的值搜索特定区域
object.method(SearchArea1);
object.method(SearchArea2);
我希望能够键入SearchArea1或SearchArea2(不作为字符串),就像您使用vbYesNo、vbCancel一样
这有意义吗?您可以定义一个,然后将其用作方法的参数
public enum SearchArea
{
SearchArea1,
SearchArea2
}
public void method(SearchArea searchArea)
{
switch (searchArea)
{
case SearchArea.SearchArea1:
// your logic for SearchArea1
break;
case SearchArea.SearchArea2:
// your logic for SearchArea2
break;
default:
throw new ArgumentException("Logic not implemented for provided search area");
}
}
您可以定义一个,然后将其用作方法的参数
public enum SearchArea
{
SearchArea1,
SearchArea2
}
public void method(SearchArea searchArea)
{
switch (searchArea)
{
case SearchArea.SearchArea1:
// your logic for SearchArea1
break;
case SearchArea.SearchArea2:
// your logic for SearchArea2
break;
default:
throw new ArgumentException("Logic not implemented for provided search area");
}
}
您可以定义一个,然后将其用作方法的参数
public enum SearchArea
{
SearchArea1,
SearchArea2
}
public void method(SearchArea searchArea)
{
switch (searchArea)
{
case SearchArea.SearchArea1:
// your logic for SearchArea1
break;
case SearchArea.SearchArea2:
// your logic for SearchArea2
break;
default:
throw new ArgumentException("Logic not implemented for provided search area");
}
}
您可以定义一个,然后将其用作方法的参数
public enum SearchArea
{
SearchArea1,
SearchArea2
}
public void method(SearchArea searchArea)
{
switch (searchArea)
{
case SearchArea.SearchArea1:
// your logic for SearchArea1
break;
case SearchArea.SearchArea2:
// your logic for SearchArea2
break;
default:
throw new ArgumentException("Logic not implemented for provided search area");
}
}
你要找的东西叫做一个。你要找的东西叫做一个。你要找的东西叫做一个。你要找的东西叫做一个。否则不是最好的方法,因为它会使代码变得脆弱。如果他添加未来的enum值,它们都会落在else上。在default
的情况下,如果他忘记修改method
中的逻辑来处理新的枚举值,那么在以后的重构之后,如果他忘记修改method
中的逻辑来处理新的枚举值,那么切换会更好。roryap:同意,这是一个简单的方法模板,展示了如何使用枚举。当然,最好是正确操作,谢谢。抛出异常后的中断
是不可访问的,可以删除。谢谢大家!我相信这会很简单!下面是一个快速跟进的问题:使用枚举与仅仅创建属性有什么区别?从我所读到的内容来看,它更多的是一种代码可管理性,而不是性能?否则不是最好的方法,因为它会使代码变得脆弱。如果他添加未来的enum值,它们都会落在else上。在default
的情况下,如果他忘记修改method
中的逻辑来处理新的枚举值,那么在以后的重构之后,如果他忘记修改method
中的逻辑来处理新的枚举值,那么切换会更好。roryap:同意,这是一个简单的方法模板,展示了如何使用枚举。当然,最好是正确操作,谢谢。抛出异常后的中断
是不可访问的,可以删除。谢谢大家!我相信这会很简单!下面是一个快速跟进的问题:使用枚举与仅仅创建属性有什么区别?从我所读到的内容来看,它更多的是一种代码可管理性,而不是性能?否则不是最好的方法,因为它会使代码变得脆弱。如果他添加未来的enum值,它们都会落在else上。在default
的情况下,如果他忘记修改method
中的逻辑来处理新的枚举值,那么在以后的重构之后,如果他忘记修改method
中的逻辑来处理新的枚举值,那么切换会更好。roryap:同意,这是一个简单的方法模板,展示了如何使用枚举。当然,最好是正确操作,谢谢。抛出异常后的中断
是不可访问的,可以删除。谢谢大家!我相信这会很简单!下面是一个快速跟进的问题:使用枚举与仅仅创建属性有什么区别?从我所读到的内容来看,它更多的是一种代码可管理性,而不是性能?否则不是最好的方法,因为它会使代码变得脆弱。如果他添加未来的enum值,它们都会落在else上。在default
的情况下,如果他忘记修改method
中的逻辑来处理新的枚举值,那么在以后的重构之后,如果他忘记修改method
中的逻辑来处理新的枚举值,那么切换会更好。roryap:同意,这是一个简单的方法模板,展示了如何使用枚举。当然,最好是正确操作,谢谢。抛出异常后的中断
是不可访问的,可以删除。谢谢大家!我相信这会很简单!下面是一个快速跟进的问题:使用枚举与仅仅创建属性有什么区别?从我所读到的内容来看,这更多的是代码可管理性,而不是性能?谢谢大家!我觉得这很容易。我只是不知道该用谷歌搜索什么!谢谢大家!我觉得这很容易。我只是不知道该用谷歌搜索什么!谢谢大家!我觉得这很容易。我只是不知道该用谷歌搜索什么!谢谢大家!我觉得这很容易。我只是不知道该用谷歌搜索什么!