易截截图软件、单文件、免安装、纯绿色、仅160KB

微软企业库5.0学习笔记(九)ASP.NET WEB应用程序

在ASP.NET Web窗体应用程序中,推荐的方法是将容器存到由Application字典对象提供的全局状态。当需要的时候你可以访问容器,甚至使用HTTP模块自动完成对页面上控件的注入。
通常情况下,你应该使用Application字典对象来存储容器的单个实例。您可能决定创建主要容器的子容器,并将它们存储到每个用户的Session对象中,甚至是每个请求,在这些子容器中注册自定义类型和映射。但是,这可能降低应用的性能,通常应尽可能避免创建额外的容器。
ASP.NET应用程序实例化容器的技术方法及限制:
1基本方法。适合小项目
2依赖注入的推荐方法。能在运行时自动完成对页面控件的注入。
3.限制和替代途径。
基本方法
通过Global.asax文件的Application_Start事件来创建并构建容器。
protected void Application_Start(object sender, EventArgs e)
{
Application.Lock();
try
{
var myContainer = Application["EntLibContainer"] as IUnityContainer;
if (myContainer == null)
{
myContainer = new UnityContainer();
myContainer.AddExtension(new EnterpriseLibraryCoreExtension());
// Add your own custom registrations and mappings here as required
Application["EntLibContainer"] = myContainer;
}
}
finally
{
Application.UnLock();
}
}
  
依赖注入的推荐方法
虽然上面提供的方法为你访问容器提供了一种途径,但是存在一些限制。这意味着你必须编写代码来处理您需要的类的实例,而且减少了代码的可发现性(discoverability)和可测性。如果你使用Unity容器,那么一个更好的方法就是通过容器的每个请求都使用BuildUp方法来构建依赖。这意味着你只需要关心你的空间和类的应用合适的属性,或着在容器中配置注入注册和映射。在运行时注入需要的企业库对象和你自己的类。
   一种方法是创建HTTP模块当一个页面加载的时候自动为所有依赖创建注入。为了做到这一点,你需要一个HTTP模块在页面初始化执行过程中执行代码,以填充依赖。还可以使用Global.asax中的Application_Start方法的来创建和填充容器,类HttpApplicationState的一个扩展方法将容器暴露给应用程序代码.一旦创建了这些,只需要应用配置中的一行可使你应用中的控件和类能够自动依赖注入。
  为自动依赖注入准备一个ASP.NET应用
1.在工程中创建一个新的ASP.NE


相关文档:

ASP.net MVC与RESTful ROA还是有点区别的

以blog系统为例,一个简单的blog系统模型包括:
1.发表一篇新的blog
2.显示一篇blog
3.修改一篇blog
4.删除一篇blog
ASP.net MVC会是这样的URL规划:
*. http://www.gaotianpu.com/blog/create,创建
get方法给用户展示一个html表单,供用户提交数据
post方法接受用户提交的数据,插入到db
*. http://www.gaotianpu. ......

asp.net(C#) 数据库备份还原 源码

Backup.aspx
  protected void Button1_Click(object sender, EventArgs e)
    {
        string path = Server.MapPath("") + @"\Backup";
        if (!Directory.Exists(path))
       ......

asp.net学习网

本文为中国ASP.NET开发网原创文章,转载必须注明出处。 名称: ASP.NET
地址:http://www.asp.net
介绍:微软.NET webform的老巢,资料和实例代码都非常难得。
名称: CSDN文档中心    loveswallow998  58213998
地址:http://dev.csdn.net/
介绍:中文的,资料还算丰富,可以作为国内首选。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号