web-dev-qa-db-ja.com

「名前空間」ですが、「タイプ」のように使用されます

これは、クラスが使用する私のプログラムであるTime2と呼ばれます。TimeTestに参照を追加しました。エラー「Time2」は「名前空間」ですが、「type」のように使用されます。

誰かがこのエラーの内容と修正方法を教えてください。

namespace TimeTest
{
  class TimeTest
  {
    static void Main(string[] args)
    {
        Time2 t1 = new Time2();
    }
  }
}
62
TheAce

同じ問題を少なくとも2回持っていると思います。

ここに:

namespace TimeTest
{
    class TimeTest
    {
}

...名前空間と同じ名前の型を宣言しています。 それをしないでください。

Time2でも同じ問題があるようです。 Isuspect追加する場合:

using Time2;

usingディレクティブのリストに追加すると、コードがコンパイルされます。しかし、お願いします、お願い、もっと大きな問題を修正してください:名前の問題のある選択。 (上記のリンクに従って、whyの詳細を確認してください。これは悪い考えです。)

(さらに、時間ベースの型を書くことに本当に興味がない限り、そうしないことをお勧めします...そして、doesまさにそれを行います。組み込み機能、またはum、 mine などのサードパーティライブラリを使用します。

91
Jon Skeet
namespace TestApplication // Remove .Controller
{
    public class HomeController : Controller
    {
       public ActionResult Index()
        {
            return View();
        }
    }
}

コントローラーのWordを名前空間から削除する

15
shoba

クラスと名前空間の名前が同じであることを確認してください...

名前空間とクラス名が同じ場合に発生します。名前空間を使用する場合、名前空間の完全な名前を書きます。

using Student.Models.Db;

namespace Student.Controllers
{
    public class HomeController : Controller
    {
        // GET: Home
        public ActionResult Index()
        {
            List<Student> student = null;
            return View();
        }
    }