Como começar com Castle-Windsor?
sou completamente nova com o IoC / windsor. Eu comecei com o Google para aprender, mas infelizmente, eu não tenho documentação adequada que poderia ser mais fácil para mim entender. então eu vim aqui com este título / perguntas.
todos os documentos / páginas (web), começando algo semelhante a isto
Mas nenhuma das páginas mostra documentação completa sobre como conseguir isso., Também tentei fazer um projecto simples, mas não consegui. Eu não sei como resolver container , onde/como chamar para instalar(), eu estou totalmente confuso. Alguém me pode ajudar com um projecto de amostra que inclua uma demonstração completa do registo/instalação? Obrigado antecipadamente." devemos começar a registar a classe / interface e depois resolvê - la ... "
3 answers
Também a injecção de dependência de Mark Seemann em .NET o livro é um bom ponto de partida. Bem escrito e tem um capítulo sobre o Castelo Windsor especificamente.
Eles também têm alguns Bons Tutoriais no projeto de código , que eu usei antes:
Actualizar
Bem, o tutorial mais simplista seria o seguinte:
1) em VS2010 criar uma nova aplicação de consola
2) carregue com o botão direito em "referências", seleccione "Gerir Pacotes NuGet", instalar Castelo.Windsor
3) Usar o código abaixo para o programa.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Castle.MicroKernel.Registration;
using Castle.Windsor;
namespace ExploringCastleWindsor
{
internal class Program
{
interface ILogger
{
void Log(string message);
}
class Logger : ILogger
{
public void Log(string message)
{
Console.WriteLine(message);
}
}
static void Main(string[] args)
{
// Registering
var container = new WindsorContainer();
container.Register(Component.For<ILogger>().ImplementedBy<Logger>());
// Resolving
var logger = container.Resolve<ILogger>();
logger.Log("Hello World!");
}
}
}
Também pode adicionar o Castelo Windsor usando
Tools -- > NuGet Package Manager -- > Package Manager Console.
E do que apenas o tipo Install-Package Castle.Windsor
Depois de acabares com os assamblies, podes seguir o código. Sebastian K forneceu um bom exemplo de código de trabalho.