Тип или имя пространства имен «MicroKernel» не существует в пространстве имен «Замок» (отсутствует ссылка на сборку?) - PullRequest
1 голос
/ 22 мая 2011

Я новичок в замке Виндзор и хотел узнать его.

Я скачал Windsor 2.5.3 для .net4 отсюда http://www.castleproject.org/castle/download.html

Я создал свое первое консольное приложение, используя vs2010и попробуйте поиграться.

Ниже приведен мой код (очень простой)

using Castle.Windsor;
using Castle.MicroKernel.Registration;


namespace ConsoleApplication2
{
class Program
{
    static void Main(string[] args)
    {
        WindsorContainer wc = new WindsorContainer();

        wc.Register(Component.For<I>().ImplementedBy<C>());

        var v = wc.Resolve<I>();

        var result = v.M();
    }
}

public class C : I
{
    public string P1 { get; set; }
    public int M()
    {
        return 100;
    }
}

public interface I
{
    int M();
}

}

Но он не скомпилирован, сообщение об ошибке сообщает:

Имя типа или пространства имен 'MicroKernel' не существует в пространстве имен 'Castle' (отсутствует ссылка на сборку?)

Имя типа или пространства имен 'Windsor' не существуетсуществует в пространстве имен 'Castle' (вам не хватает ссылки на сборку?)

Я на самом деле ссылался на dll и castle.windsor castle.core и intellisense, которые работали нормально до компиляции ....

Я также заметил, что когда я дважды щелкаю ссылку на castle.windsor, он не отображает иерархию пространства имен в окне браузера объекта.

Я даже закомментировал весь свой код, он все еще не может скомпилироваться,говорит то же сообщение об ошибке.

Можете ли выпосоветуйте, что я могу сделать, чтобы он работал.действительно ценю это!!

1 Ответ

9 голосов
/ 22 мая 2011

Проблема, скорее всего, в целевой структуре вашего проекта.

Откройте свойства проекта и найдите раскрывающийся список целевой структуры. Если там написано .Net Framework 4.0 Client Profile, измените его на .Net Framework 4.0.

...