Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 由于Stringfrom方法导致的错误_C# - Fatal编程技术网

C# 由于Stringfrom方法导致的错误

C# 由于Stringfrom方法导致的错误,c#,C#,朋友我编译下面的程序时出错。错误在字符串fromMonths中。表明它在当前上下文中不存在。 它在curren竞赛中如何不存在,因为我想从枚举月份中获取一个常量a字符串,同时将其转换为字符串 感谢你的回应 using System; enum Months { September, Octobar, November = 11, December, } class Montest { public static void Main() {

朋友我编译下面的程序时出错。错误在字符串fromMonths中。表明它在当前上下文中不存在。 它在curren竞赛中如何不存在,因为我想从枚举月份中获取一个常量a字符串,同时将其转换为字符串

感谢你的回应

using System;

enum Months

{

   September,
   Octobar,
   November = 11,
   December,

}

 class Montest

 {

 public static void Main()

 {

   string s;

    Console.WriteLine("Please choose a month");
    Console.WriteLine("September");
    Console.WriteLine("Octobar");
    Console.WriteLine("November");
    Console.WriteLine("December");
    s = Console.ReadLine();
    switch (s)
    {
        case "September":
            Console.WriteLine("You have selected September which has the Valuve {0}",StringfromMonths(Months.September));
            break;
        case "October":
            Console.WriteLine("You have selected September which has the Valuve {0}", StringfromMonths(Months.September));
            break;
        case "November":
            Console.WriteLine("You have selected September which has the Valuve {0}", StringfromMonths(Months.September));
            break;
        case "December":
            Console.WriteLine("You have selected September which has the Valuve {0}", StringfromMonths(Months.September));
            break;
    }


}

}

创建缺少的函数:

static public string StringfromMonths(Months months)
{
    return months.ToString();
}
但我的建议是:不要使用函数,而是像这样显示您的值:

Console.WriteLine("You have selected September which has the Valuve {0}", Months.September);

出现此错误是因为您没有StringfromMonths方法。你可以做的一件事是:

Enum.GetName(typeof(Months), Months.September):

您的代码中没有名为
StringfromMonths
的方法,除了编译器错误外,这似乎确实有误导性,因为我假设这个丢失的方法返回一个字符串,而您正试图打印枚举
Months的数值。九月

如果确实要打印枚举值的数值,则需要将其转换为整数。
所以很简单:

Console.WriteLine("You have selected September which has the value {0}", 
                   Convert.ToInt32(Months.September));
顺便说一下,如上所述,9月份的值为0,10月份为1,11月份为11,12月份为12。(你所有的开关箱都打印在九月?)


最后但并非最不重要的一点是,“八达通”是什么?一个你点一份就可以得到八份的酒吧?我每个星期六晚上都会去那里

有趣的是,
这个bug在StringFrommonds中,它在当前上下文中不存在。是的,我同意编译器,我看不到它。迷失在复制/粘贴中?StringfromMonths方法在哪里?爱当人们试图重新发明轮子时。。。。NET中的内置函数有什么问题?复制粘贴万岁-1用于糟糕的格式设置和所有大写字母的使用。Martin我想要这里的值,但它返回名称。我不理解你的问题。“值”和“名称”是什么意思?你是指数值吗?就像“十一月”转换成11?哈哈,史蒂夫很有趣,谢谢阿洛特。我犯了足够多的错误,但仍然有好人在这里解决了我的问题。