.net - ¿Cómo empezar con Castle-Windsor?
(3)
Si estás buscando un tutorial, revisa este link
En un ejemplo, se explica CastleWindsor, Nhibernate y UnitOfWork.
Soy completamente nuevo con IoC / windsor. Comencé con Google para aprenderlo, pero desafortunadamente, no tengo la documentación adecuada que podría ser más fácil de entender. Así que vine aquí con este título / preguntas.
Todos los documentos / páginas (web), comenzando algo similar a esto.
"Debemos comenzar desde el registro de la clase / interfaz y luego resolverlo ..."
pero ninguna de las páginas muestra documentación completa sobre cómo lograrlo, también intenté hacer un proyecto simple, pero no lo ejecuté. No sé cómo resolver el contenedor, dónde / cómo llamar para instalar (), estoy totalmente desordenado.
¿Podría alguien ayudarme con un proyecto de muestra que incluya una demostración completa de registro / instalación?
Gracias por adelantado :)
También el libro de Inyección de dependencia de Mark Seemann en .NET es un buen lugar para comenzar. Bien escrito y tiene un capítulo específico sobre el castillo de Windsor.
También tienen algunos buenos tutoriales sobre el proyecto de código , que he usado antes:
ACTUALIZAR
Bueno, el tutorial más simplista sería el siguiente:
1) En VS2010 crear nueva aplicación de consola
2) Haga clic derecho en "Referencias", seleccione "Administrar paquetes NuGet", instale Castle.Windsor
3) Usa el código de abajo para Program.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!");
}
}
}
También puedes agregar Castle Windsor usando
Herramientas -> NuGet Package Manager -> Package Manager Console.
Y que simplemente escriba Install-Package Castle.Windsor
Después de que hayas terminado con los asambleas, puedes ir con el código. Sebastian K proporcionó un buen ejemplo de código de trabajo.