用Microsoft.Practices.Unity实现简单的依赖注入
时间:2010-12-26 来源:叶鹏
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ITest;
namespace TestUnity
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
IService service = WebSingleton.ApplicationContainer.Resolve<IService>();
if (service.UserLogin(TextBox1.Text, TextBox2.Text)) {
Response.Write("success");
}
}
}
}
第二步:写个接口来提供注入入口
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ITest
{
public interface IService
{
bool UserLogin(string uname, string pwd);
}
}
第三步:实现这个接口
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ITest
{
public class Service:IService
{
#region IService 成员
public bool UserLogin(string uname, string pwd)
{
return true;
}
#endregion
}
}
第四步:调用依赖注入的类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Practices.Unity;
using System.Web;
namespace ITest
{
public class WebSingleton
{
public static IUnityContainer ApplicationContainer
{
get
{
return HttpContext.Current.Application["Container"] as IUnityContainer;
}
set
{
HttpContext.Current.Application["Container"] = value;
}
}
}
}
相关阅读 更多 +










