自定义提供程序,最佳实践和配置信息

时间:2009-08-11 12:07:58

标签: asp.net provider

我一直在用ASP.NET构建网站一段时间。起初,我避免学习ASP.NET Provider Model的复杂性。相反,我在必要时使用了罐头提供程序,并且依赖于依赖注入框架来满足我的所有其他需求。

最近,我一直在为ASP.NET编写可插入的组件,当然还要编写大量基于自定义提供程序的解决方案,以实现这一目标。然而,我很快就明白了很多initialization code is being duplicated,这是一件坏事。

所以......

  1. 是否有关于如何避免配置意大利面条代码的最佳实践?
  2. 您是否构建过,或者有任何示例(基础/辅助类,自定义属性,反射)来共享抽象基本初始化代码,以便更容易构建自定义提供程序?
  3. 注意:

    请不要尝试将我发送到Provider Toolkit网站。我已经用尽了这个资源,这就是我转向SO社区的原因:))

1 个答案:

答案 0 :(得分:0)

我刚刚对会员和角色提供者的相当基本的实现进行了粗略的实现,而且我根本没有任何代码重复!

我将所有内容分成三个项目(加上测试):

  • 应用程序 - asp.net mvc app。模型,控制器等。
  • 基础设施 - IoC和接口
  • Infrastructure.Web - 提供商

User和Role的模型实现了Infrastructure的接口,这些类在应用程序启动时注册到IoC。然后,提供商要求IoC解决这些类问题并做到这一点。这样我就可以使用相同的提供程序向模型和用户界面添加内容。我注意到的一个问题是,由“ASP.NET配置”按钮启动的Web无法使用提供程序,因为设置是在Application_Start中完成的,而“ASP.NET配置”是另一个Web 。我不认为这是一个问题。