您的位置:首页 > 其它

DNN的数据访问方式——合理运用模式,提高数据访问的灵活性(有修正)

2005-05-17 13:19 387 查看
注:这些时正在看设计模式方面的内容,仔细了解后发现DNN中数据访问方式应该是使用的简单工厂模式(看见有的书上说它是反射工厂,我觉得他是利用.NET的反射技术实例化对象的简单工厂, <!--data默认的Provider是SqlDataProvider-->
<data defaultProvider="SqlDataProvider">
<providers>
<clear />
<!--Provider的详细信息-->
<add name="SqlDataProvider" type="DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider" connectionStringName="SiteSqlServer" upgradeConnectionString="" providerPath="~\Providers\DataProviders\SqlDataProvider\" objectQualifier="" databaseOwner="dbo" />
</providers>
</data>
这样如果我们需要用Oracle数据库,只需要编写一个OracleDataProvider子类实现DataProvider中的接口就行了。然后将配置文件的信息修改如下即可。

<data defaultProvider="OracleDataProvider">
<providers>
<clear />
<!--Provider的详细信息-->
<add name="OracleDataProvider" type="DotNetNuke.Data.OracleDataProvider, DotNetNuke.OracleDataProvider" connectionStringName="SiteSqlServer" upgradeConnectionString="" providerPath="~\Providers\DataProviders\OracleDataProvider\" objectQualifier="" databaseOwner="" />
</providers>
</data>
  这种数据访问方式能够灵活的配置应用程序使用的数据库,而且每个用户模块都有自己独立的DataProvider,应该是可以实现不同的用户模块使用不同的数据库。我现在还在看系统框架的东西,关于不同用户模块是否是可以使用不同数据库的问题还不能肯定,不过我想是可以的。

更多相关内容>>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: