zoukankan      html  css  js  c++  java
  • DNN学习笔记:DNN类中的ProviderType字段 荣

    在DNN的许多类中都有ProviderType常量,例如:SqlDataProvider中: Private Const ProviderType As String = "data";XMLLoggingProvider中:Private Const ProviderType As String = "logging"。

    刚开始看的时候,觉得很突兀,为什么会出现一个这样的常量,没有什么用嘛。

    后来,发觉ProviderType常量值对应配置文件wen.config中的元素,该元素的defaultProvider属性,对应该类的名称,例如:

    <data defaultProvider="SqlDataProvider">
          <providers>
            <clear />
            <add name="SqlDataProvider" type="DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider" connectionStringName="SiteSqlServer" upgradeConnectionString="" providerPath="~\Providers\DataProviders\SqlDataProvider\" objectQualifier="" databaseOwner="dbo" />
          </providers>
        </data>

    <logging defaultProvider="XMLLoggingProvider">
          <providers>
            <clear />
            <add name="XMLLoggingProvider" type="DotNetNuke.Services.Log.EventLog.XMLLoggingProvider, DotNetNuke.XMLLoggingProvider" configfilename="LogConfig.xml.resources" providerPath="~\Providers\LoggingProviders\XMLLoggingProvider\" />
          </providers>
        </logging>

    估计ProviderType常量就是与该类对应的配置文件元素的名称。

    在Provider.vb中有对该配置元的调用:

    ' 读取配置文件 "dotnetnuke/"
      Public Shared Function GetProviderConfiguration(ByVal strProvider As String) As ProviderConfiguration
                Return CType(ConfigurationSettings.GetConfig("dotnetnuke/" & strProvider), ProviderConfiguration)
      End Function

    在这里读取出配置文件的信息,然后在Reflection类中,调用这些信息,生成特定的类对象。

  • 相关阅读:
    在泛型方法中返回泛型数组
    java泛型方法返回泛型结果
    hive -e和hive -f的区别(转)
    hive表批处理
    python网络编程——实现简单聊天
    python网络编程(转)
    python分布式编程(转)
    shell多线程之进程间通信(3)
    在xml文件中使用该控件
    Java文件中代码
  • 原文地址:https://www.cnblogs.com/admin11/p/201281.html
Copyright © 2011-2022 走看看