错误缺少命名空间或程序集引用

时间:2012-08-15 06:06:47

标签: c# .net console-application

我正在编写正确的代码,但是收到错误 - 缺少命名空间或程序集引用。代码有问题或我遗漏了什么?

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

namespace ConsoleApplication5
{
    class Program
    {
        static void Main(string[] args)
        {
            int i = 0;
            int sum = 0;
            int[] arr = new int[] { 1, 2 };

            do
            {
                {
                    sum += arr[1];
                    Console.WriteLine("Wow");
                    i++;
                }
            }
            while (i < 3);
        }
    }
}
  

错误是:错误无法使用集合初始值设定项初始化类型'int',因为它没有实现'System.Collections.IEnumerable

7 个答案:

答案 0 :(得分:29)

我的命名空间以Console(即MyProject.Console)结束,这搞砸了对Console.Write的调用。在这种情况下,请写入完全限定名称System.Console.Write或更改名称空间。

答案 1 :(得分:18)

  

我正在编写正确的代码

不要从这个假设开始。始终假设编译器是正确的,并且您的代码是错误的。

您尚未显示任何using指令。在这种情况下,您只需要

using System;

(在代码的最顶部或namespace声明中。)

或将您的WriteLine电话改为:

System.Console.WriteLine("Wow");

如果那个没有修复它(或者如果你已经有了这样的using指令但是忘了包含它),那么你的项目可能会有所破坏 - 它不是就像你使用任何异国情调一样。

答案 2 :(得分:3)

导入System命名空间或只使用System.Console.WriteLine("...");

using System;

namespace TestNs
{
   public class Test
    {
      static void Main() 
       {
         Console.WriteLine("Hello World");
        }
     }
}

答案 3 :(得分:2)

我遇到了类似的问题。我用的命名空间名称以.Console结尾,所以和System.Console有冲突

using System;

namespace Test.Console
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

我将 Test.Console 更改为 Test.ConsoleApp,并为我解决了问题

using System;

namespace Test.ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

答案 4 :(得分:1)

您的控制台应用的最低要求应为此

using System;
using System.Collections.Generic;
using System.Text;

namespace TestConsole
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }
}

答案 5 :(得分:0)

感谢所有人的帮助,我在你们的帮助下设法解决了问题:)

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

namespace ConsoleApplication5
{
    class Program
    {
        static void Main(string[] args)
        {

            int i = 0; //initialize integer i=0
            int sum = 0; // initialize integer sum = 0;
            int[] arr = new int[]{1, 2, 3, 4}; // array containing 4 integers elements
            do
            {

                {
                    sum+=arr[i];    //sum each integer in array and store it in var sum

                    i++;        //increment i for each element of array
                    Console.WriteLine(sum); //output the var sum conatining values after each increment
                }

            }
            while(i<=3); //check condition for number of elements in array

        }
    }
}

答案 6 :(得分:0)

使用Myproject.App的命名空间也会引起问题,与MyProject.Console相同(根据上述contactmatt的回答)。