Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeArchived Discus...Archived Discus...Developing Under Previous Versions of .NETDeveloping Under Previous Versions of .NETASP.Net 2.0ASP.Net 2.0DataProvider CreateObject callDataProvider CreateObject call
Previous
 
Next
New Post
7/12/2007 12:51 PM
 

I'm writing a custom module that makes a single call to an Oracle database and then stores the values in the DNN SQL database. The SQL code works fine, but when I try to use DataProvider.Instance() to create a call to the Oracle database, it fails because it cannot read the web.config section I have specified. I've tried to correct this for about a week without success. Below are chunks of the web.config and code files. Please advise!

web.config:
========================================================================

  <configSections>
    <sectionGroup name="dotnetnuke">
    ...
      <section name="oracledata" requirePermission="false" type="DotNetNuke.Framework.Providers.ProviderConfigurationHandler, DotNetNuke"/>
    </sectionGroup>
    <connectionStrings>
      <add name="OracleServer" connectionString="..." providerName="System.Data.OracleClient" />
    </connectionStrings>
    <dotnetnuke>
   ...
    <oracledata defaultProvider="OracleProvider">
        <providers>
            <clear />
            <add name="OracleProvider" connectionStringName="OracleServer" />
        </providers>
   </oracledata>
========================================================================

DataProvider.vb:
==============================================
Namespace MyModule.Data

Public MustInherit Class DataProvider
    Private Shared objProvider As DataProvider = Nothing

    Shared Sub New()
        CreateProvider()
    End Sub

    Private Shared Sub CreateProvider()
        Dim myObj As Object = CreateObject("cleodata", "WebConfig.Data", "WebConfig.Data", False)
        If Not myObj Is Nothing Then
            objProvider = CType(myObj, DataProvider)
        Else
            objProvider = CType(DotNetNuke.Framework.Reflection.CreateObject("oracledata", "MyModule.Data", "MyModule.Data"), DataProvider)
        End If
    End Sub

    Public Shared Shadows Function Instance() As DataProvider
        Return objProvider
    End Function

    Public MustOverride Function GetConnectionString(ByVal portalId As Integer) As String
End Class
====================================================================

OracleDataProvider.vb:
====================================================

Public Class OracleDataProvider
    Inherits DataProvider
#Region "Private Members"
    Private Const ProviderType As String = "oracledata"
    Private m_ProviderConfiguration As Framework.Providers.ProviderConfiguration = Framework.Providers.ProviderConfiguration.GetProviderConfiguration(ProviderType)
    Private m_ConnectionString As String
#End Region
#Region "Public Properties"
    Public ReadOnly Property ConnectionString() As String
        Get
            Return m_ConnectionString
        End Get
    End Property
#End Region
#Region "Constructors"
    Public Sub New()

        ' Read the configuration specific information for this provider
        Dim objProvider As Framework.Providers.Provider = CType(m_ProviderConfiguration.Providers(m_ProviderConfiguration.DefaultProvider), Framework.Providers.Provider)

        ' Read the attributes for this provider
        m_ConnectionString = Config.GetConnectionString(objProvider.Attributes("connectionStringName").ToString())


    End Sub
#End Region
    Public Overrides Function GetConnectionString(ByVal portalId As Integer) As String
        Return "Connection Portal: " & portalId & " connStr: " & m_ConnectionString
    End Function
End Class

 
Previous
 
Next
HomeHomeArchived Discus...Archived Discus...Developing Under Previous Versions of .NETDeveloping Under Previous Versions of .NETASP.Net 2.0ASP.Net 2.0DataProvider CreateObject callDataProvider CreateObject call


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out