'消息'是一个变量'但是像一种方法一样使用'

时间:2014-05-26 19:39:02

标签: c# visual-studio-2013

学习C#并尝试创建一个快速游戏,我收到错误消息' message'是一个变量'但是像一种方法一样使用'。创建了一个名为message的空字符串,并在下面定义了它。遵循Microsoft Virtual academy的教程。

 using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;

    namespace PrizeGame
    {
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, you're going to play a game"+
                "Pick a number between 1 and 10, Type it and press enter.");
            string userValue = Console.ReadLine();
            string message="";
            string noWin ="Sorry, you didn't win anything :(. On the"+
            "other hand you helped me with my project, thanks!";
            if (userValue == "1")
            {
                message(noWin);
            }
            else if (userValue=="2")
            {
               message("Congratulations, you won a penny! Also, thanks for"+
                "helping me with my project!");
            }
            else if(userValue=="3")
            {
                message(noWin);
            }
            else if(userValue=="3")
            {
                message(noWin);
            }
            else if(userValue=="4")
            {
            message("Congratulations, you won 20 pence! Also, thanks for"+
                "helping me with my project!");
            }
            else if(userValue=="5")
            {
                message(noWin);
            }
            else if(userValue=="6")
                {
                    message(noWin);
                }
            else if(userValue=="7")
            {
                message ("Congratulations, you just won the top prize, £1!!"+
                "Also, thanks for helping me with my project.");
            }
            else if (userValue=="8")
            {
                message(noWin);
            }
            else if (userValue=="9")
            {
                message(noWin);
            }
            else if (userValue=="10")
            {
                message(noWin);
            }
            else
            {
                message("Sorry I couldn't understand what you wrote"+
                "make sure you use a number between 1 and 10");
            }
            Console.WriteLine(message);
            Console.ReadLine(),;


        }
    }

    }
`

4 个答案:

答案 0 :(得分:2)

您正在声明一个名为message的字符串变量。你不能用方法表示法来调用它。

这样做

message = "Congratulations, you won a penny! Also, thanks for"+"helping me with my project!"; 

答案 1 :(得分:2)

这是一个函数调用,你有什么:

message(noWin);

这是一个字符串赋值:

message = noWin;

OR

message += noWin; //appended to the end

您希望后者之一将值赋给变量,以供日后使用; C#没有使用()表示法。如果您希望消息是一个数组,那么您需要:

string[] message;

然而,这样做会容易得多:

var messages = new List<string>();
messages.Add(noWin);

答案 2 :(得分:0)

我查看了你的代码,在.NET中,你有一个方法或一个变量,一个变量被它的名字调用,而一个函数或函数被它调用&# 39; s名,后跟()。在这些括号之间可以是函数的参数。

当你的noWin是一个字符串/文本时,你的消息没有任何内容。

当您想要显示该字符串时,您应该使用:

Console.WriteLine(noWin);

我希望它有所帮助。

答案 3 :(得分:0)

也许你应该使用如下:

MessageBox.Show(noWin);

在你的情况下使用switch语句而不是if else如果更可读。 希望它有所帮助。