c# - 特定值作为函数的参数

标签 c# asp.net

我有一个函数,它有 1 个字符串类型的参数/参数:

        public void foo(String myParam)
        {
           //do something
        }

字符串的可能值受到限制(例如“test”、“test2”和“test3”),任何不同的 myParam 值都会导致错误。

是否可以在没有检查 myParam 值的 switch case 的情况下限制 myParam 的可能值?

也可以将不同的对象传递给我的函数,它包装了我需要的实际值。

是否有针对该问题的标准/最佳解决方案?

最佳答案

你可以创建一个枚举

public enum MyParam
{
    test,
    test2,
    test3
}

并使用 ToString 获取您的 enum 的字符串表示形式

public void foo(MyParam myParam)
{
    if(!Enum.IsDefined(typeof(MyParam),myParam))
        throw new ArgumentException();
    myParamString = myParam.ToString();
}

关于c# - 特定值作为函数的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15247680/

相关文章:

c# - 使用Windows.Media.Transcoding从WAV创建m4a

c# - 如何在 Microsoft SQL CE 中转义特殊字符

c# - SSIS-PostAsJsonAsync 不起作用

asp.net - 如何创建 Razor 页面背后的代码

c# - 这些对象的实例化方式有何不同?

c# - 如何使用 C# 从 Windows Mobile 打开网络连接?

c# - 类图中类的哈希码

javascript - Jquery:浏览器填充文本框后启动功能

.net - 在 Visual Studio 中发布网站 : Use 'Fixed naming and single page assemblies' ?

ASP.net 这是预编译工具生成的标记文件,不要删除