5

コードを正しく記述していますが、エラーが発生します-名前空間またはアセンブリ参照がありませんコードに何か問題がありますか、それとも何かがありませんか?

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);
        }
    }
}

エラーは次のとおりです。エラーは、「System.Collections.IEnumerable」を実装していないため、コレクション初期化子でタイプ「int」を初期化できません。

4

7 に答える 7

58

私の名前空間はConsole(つまりMyProject.Console)で終わり、への呼び出しを台無しにしましたConsole.Write。この場合、完全修飾名を書き込むかSystem.Console.Write、名前空間を変更してください。

于 2015-03-04T15:12:00.077 に答える
24

私はコードを正しく書いています

この仮定から始めないでください。コンパイラが正しく、コードが間違っているという前提から常に始めてください。

usingディレクティブは表示されていません。この場合、必要なのは

using System;

(コードの最上部またはnamespace宣言内のいずれか。)

または、WriteLine通話を次のように変更します。

System.Console.WriteLine("Wow");

それでも問題が解決しない場合(または、そのようなディレクティブを既に持っているがusing、それを含めるのを忘れた場合)、プロジェクトはおそらく多少壊れています-エキゾチックなタイプを使用しているわけではありません。

于 2012-08-15T06:11:52.773 に答える
3

名前空間をインポートするSystemか、単に使用しますSystem.Console.WriteLine("...");

using System;

namespace TestNs
{
   public class Test
    {
      static void Main() 
       {
         Console.WriteLine("Hello World");
        }
     }
}
于 2012-08-15T06:11:02.920 に答える
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!");
        }
    }
}
于 2021-01-02T08:06:38.033 に答える
1

コンソールアプリの最小値はこれである必要があります

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

namespace TestConsole
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }
}
于 2012-08-15T06:11:37.407 に答える
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

        }
    }
}
于 2012-08-15T07:16:15.767 に答える
0

の名前空間を使用すると、 (上記のcontactmattの回答による) Myproject.Appと同じように問題が発生します。MyProject.Console

于 2019-08-13T22:57:03.657 に答える