ASP.NET MVC具有组合模式

时间:2016-12-15 15:41:27

标签: c# asp.net-mvc design-patterns

我需要我的控制器具有多种功能,例如

  • 有些控制器将我的实体保存到数据库中,所以我在这里使用Repository模式(在构造函数中传递Repository)。
  • 另一方面,有些控制器执行此操作,并将我的实体发送到外部服务。在这种情况下,我也在Controller的构造函数中传递服务客户端。

由于我的控制器无法继承两个类,例如

  • DbEntityController:处理数据库存储库的那个。
  • ServiceEntityController:处理远程服务客户端的那个。

您能否就如何为MVC控制器实现一种组合模式提供一些建议?我实际上关心URL路由等。如果我的操作方法将他们的任务委托给“内部”控制器,这是否会起作用。

任何想法都会有所帮助!

更新:

这些是我的构造函数或多或少(我顺便使用DI与Uni​​ty)

DbEntityController(IDbRepository<TEntity>)

ServiceEntityController(IServiceRepository<TEntity>)

OrderController(IDbRepository<IOrder>, IServiceRepository<IOrder>)

AddressController(IDbRepository<IAddress>)

  • 不知何故,OrderController继承自DbEntityController和ServiceEntityController。

0 个答案:

没有答案