Hi all:
While artchitecting and doing some core code debugging in prep for a large DNN project, I noticed that the DataProvider specifically looks at the 'data' tag in the web.config file for the connection string, no matter what is specified in the DataProvider.vb file for the Desktop Module:
' Provider constants - eliminates need for Reflection later
Private Const _sDataProviderType As String = "data"
Private Const _sDataNameSpace As String = "LCS.Requisitions.Data"
Private Const _sDataAssemblyName As String = "LCS.Requisitions.Data"
Private Shared _oDataProvider As DataProvider = Nothing
Public Shared Shadows Function Instance() As DataProvider
If _oDataProvider Is Nothing Then
_oDataProvider = CType(DotNetNuke.Framework.Reflection.CreateObject(_sDataProviderType, _sDataNameSpace, _sDataAssemblyName), DataProvider)
End If
Return _oDataProvider
End Function
So if we want to have more than one connection string (ie, more than one database), we have to change the core code, since the only connection string available via the DNN DataProvider is the default connections string. Is there any knowledge of this issue? Am I doing something wrong? Since we will definitely be connecting to more than one database, how do others who use more than one database resolve this issue?
We are currently building a DNN site for a school district (we are building one DNN portal as a 'test case' for moving all future development in the district to DotNetNuke and .NET from mainframe COBOL/Natural/Adabas/etc). Since the school district is in the county seat of the state capital, there are other counties looking to see how this project goes.
So we are very excited about this opportunity to put DNN into a potentially pervasive position in school systems. We do have some concerns w/load balancing and such, but we've load tested the core packages and they stand up to many hundreds of consecutive logins, which is good news.