知识大全 ASP.NET MVC 4框架揭秘:基于IoC的ControllerFactory(2)[1]

Posted 员工

篇首语:仰天大笑出门去,我辈岂是蓬蒿人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP.NET MVC 4框架揭秘:基于IoC的ControllerFactory(2)[1]相关的知识,希望对你有一定的参考价值。

ASP.NET MVC 4框架揭秘:基于IoC的ControllerFactory(2)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

     基于IoC的ControllerFactory( )

  我们创建一个EmployeeRepository对象来进行数据的获取 并为它定义了对应的接口IEmployeeRepository 如下面的代码片段所示 IEmployeeRepository仅仅具有一个返回Employee列表的唯一方法GetEmployees 用于获取指定ID的员工信息 如果指定的ID为空 则返回所有员工列表 EmployeeRepository直接利用一个静态字段模拟对数据的存储

  public interface IEmployeeRepository

  

  IEnumerable<Employee> GetEmployees(string id = )

  

  public class EmployeeRepository : IEmployeeRepository

  

  private static IList<Employee> employees;

  static EmployeeRepository()

  

  employees = new List<Employee>()

  employees Add(new Employee( 张三 男 new DateTime( )

   销售部 ))

  employees Add(new Employee( 李四 女 new DateTime( )

   人事部 ))

  employees Add(new Employee( 王五 男 new DateTime( )

   人事部 ))

  

  public IEnumerable<Employee> GetEmployees(string id = )

  

  return employees Where(e => e Id == id || string IsNullOrEmpty(id))

  

  

  我们创建了一个具有如下定义的EmployeeController 它具有一个类型为IEmployeeRepository的属性Repository 应用在上面的DependencyAttribute特性告诉我们这是一个 依赖属性 当我们采用UnityContainer来激活EmployeeController对象的时候 会根据注册的类型映射来实例化一个实现了IEmployeeRepository的类型的实例来初始化该属性

  public class EmployeeController : Controller

  

  [Dependency]

  public IEmployeeRepository Repository get; set;

  public ActionResult GetAllEmployees()

  

  var employees = this Repository GetEmployees()

  return View( EmployeeList employees)

  

  public ActionResult GetEmployeeById(string id)

  

  Employee employee = this Repository GetEmployees(id) FirstOrDefault()

  if (null == employee)

  

  throw new HttpException( string Format( ID为 的员工不存在 id))

  

  return View( Employee employee)

  

  

  EmployeeController定义了两个基本的Action方法 GetAllEmployees通过Repository获取所有员工列表并将其通过名位EmployeeList的View呈现出来 另一个Action方法GetEmployeeById根据指定的ID获取相应的员工信息 最终用于呈现单个员工信息的View为Employee 如果根据指定的ID找不到相应的员工 直接抛出一个状态为 的HttpException异常

cha138/Article/program/net/201311/16071

相关参考

知识大全 ASP.NET MVC 4框架揭秘:基于IoC的DependencyResolver(2)

ASP.NETMVC4框架揭秘:基于IoC的DependencyResolver(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布

知识大全 ASP.NET MVC 4框架揭秘:基于IoC的DependencyResolver(1)[2]

ASP.NETMVC4框架揭秘:基于IoC的DependencyResolver(1)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理

知识大全 ASP.NET MVC 4框架揭秘:基于IoC的DependencyResolver(1)[1]

ASP.NETMVC4框架揭秘:基于IoC的DependencyResolver(1)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理

知识大全 ASP.NET MVC 4框架揭秘:基于IoC的ControllerFactory(1)[2]

ASP.NETMVC4框架揭秘:基于IoC的ControllerFactory(1)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后

知识大全 ASP.NET MVC 4框架揭秘:基于IoC的ControllerFactory(1)[1]

ASP.NETMVC4框架揭秘:基于IoC的ControllerFactory(1)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后

知识大全 ASP.NET MVC 4框架揭秘:基于IoC的ControllerFactory(2)[2]

ASP.NETMVC4框架揭秘:基于IoC的ControllerFactory(2)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后

知识大全 ASP.NET MVC 4框架揭秘:基于IoC的ControllerFactory(3)[1]

ASP.NETMVC4框架揭秘:基于IoC的ControllerFactory(3)[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后

知识大全 ASP.NET MVC 4框架揭秘:基于IoC的ControllerFactory(3)[2]

ASP.NETMVC4框架揭秘:基于IoC的ControllerFactory(3)[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后

知识大全 ASP.NET MVC 4框架揭秘:从Unity来认识IoC(2)

ASP.NETMVC4框架揭秘:从Unity来认识IoC(2)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来