小编Cod*_*y_S的帖子

是否可以在C#中使用未存储在变量中的字符串值的.ToUpper()方法?

我有一个程序从文件中读取参数.该文件一次读取一行,并检查每一行以查看它是否包含特定值或空白.如果line不是空格,则行中的值将传递给switch语句.以下是有问题的swtich声明的一部分:

switch(stName)
        {
            //GENERAL section
            case "JOBNAME":
                _JobName = stValue;
                break;
            case "RUN AS-OF DATE":
                _RunDate = stValue;
                break;
            case "USER NOTIFICATION EMAIL ADDRESS":
                _UserEmailAddr = stValue;
                break;
            default:
                System.Exception ex = new System.Exception("Unexpected parameter");
                ex.Data.Add("Config File", oCommandArgs.ConfigFile);
                ex.Data.Add("Parm Line", stIniLine);
                ex.Data.Add("Delimiter", cDelimiter);
                ex.Data.Add("Name", stName);
                ex.Data.Add("Value", stValue);
                throw ex;

        }
Run Code Online (Sandbox Code Playgroud)

在转到switch语句之前,stName中的值将转换为大写.我的问题是,是否可以对未存储在变量中的字符串值使用.ToUpper()方法?基本上,这样代码就像这样:

    switch(stName)
        {
            //GENERAL section
            case "Jobname".ToUpper():
                _JobName = stValue;
                break;
            case "Run as-of date".ToUpper():
                _RunDate = stValue;
                break;
            case "User notification e-mail address".ToUpper():
                _UserEmailAddr = stValue;
                break;
            default:
                System.Exception …
Run Code Online (Sandbox Code Playgroud)

c# string switch-statement

-4
推荐指数
1
解决办法
811
查看次数

标签 统计

c# ×1

string ×1

switch-statement ×1