0 Replies Latest reply: Aug 4, 2011 3:05 PM by 880380 RSS

    type Database cannot be constructed error

    880380
      I have an ASP.NET application I am building. It runs just fine on the Dev machine, but when deploying to the test server it fails with the error below. I am running a Win 2k8R2 server, both machines are connecting to a single database and I am using .NET 4.0 and VS2010 with the Enterprise Library. Both machines are using the very same web.config which defines the Connection String.

      Any suggestions, hints, etc.

      TIA, Kent Ogletree


      The error I receive is:

      Server Error in '/' Application.
      --------------------------------------------------------------------------------

      The type Database cannot be constructed. You must configure the container to supply this value.
      Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

      Exception Details: System.InvalidOperationException: The type Database cannot be constructed. You must configure the container to supply this value.

      Source Error:


      Line 293:#Region "LMControl Methods"
      Line 294: Public Shared Function GetLMControl() As IDataReader
      Line 295: Dim OracleDB As Database = EnterpriseLibraryContainer.Current.GetInstance(Of Database)("OraAspNetConString")
      Line 296:
      Line 297: Dim sb As New StringBuilder()


      Source File: C:\inetpub\records\App_Code\DAL\DataProvider.vb Line: 295

      Stack Trace:


      [InvalidOperationException: The type Database cannot be constructed. You must configure the container to supply this value.]
      Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.GuardTypeIsNonPrimitive(IBuilderContext context, SelectedConstructor selectedConstructor) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\ObjectBuilder\Strategies\BuildPlan\DynamicMethod\Creation\DynamicMethodConstructorStrategy.cs:289
      Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.PreBuildUp(IBuilderContext context) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\ObjectBuilder\Strategies\BuildPlan\DynamicMethod\Creation\DynamicMethodConstructorStrategy.cs:71
      Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\ObjectBuilder\Strategies\StrategyChain.cs:112
      Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy.CreatePlan(IBuilderContext context, NamedTypeBuildKey buildKey) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\ObjectBuilder\Strategies\BuildPlan\DynamicMethod\DynamicMethodBuildPlanCreatorPolicy.cs:50
      Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext context) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\ObjectBuilder\Strategies\BuildPlan\BuildPlanStrategy.cs:37
      Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\ObjectBuilder\Strategies\StrategyChain.cs:112
      Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\UnityContainer.cs:511

      [ResolutionFailedException: Resolution of the dependency failed, type = "Microsoft.Practices.EnterpriseLibrary.Data.Database", name = "OraAspNetConString".
      Exception occurred while: while resolving.
      Exception is: InvalidOperationException - The type Database cannot be constructed. You must configure the container to supply this value.
      -----------------------------------------------
      At the time of the exception, the container was:

        Resolving Microsoft.Practices.EnterpriseLibrary.Data.Database,OraAspNetConString
      ]
      Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, Object existing, String name, IEnumerable`1 resolverOverrides) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\UnityContainer.cs:517
      Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type t, String name, IEnumerable`1 resolverOverrides) in e:\Builds\Unity\UnityTemp\Compile\Unity\Unity\Src\UnityContainer.cs:485
      Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(Type serviceType, String key) in c:\Home\Chris\Projects\CommonServiceLocator\main\Microsoft.Practices.ServiceLocation\ServiceLocatorImplBase.cs:49

      [ActivationException: Activation error occured while trying to get instance of type Database, key "OraAspNetConString"]
      Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(Type serviceType, String key) in c:\Home\Chris\Projects\CommonServiceLocator\main\Microsoft.Practices.ServiceLocation\ServiceLocatorImplBase.cs:57
      Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(String key) in c:\Home\Chris\Projects\CommonServiceLocator\main\Microsoft.Practices.ServiceLocation\ServiceLocatorImplBase.cs:103
      DataProvider.GetLMControl() in C:\inetpub\records\App_Code\DAL\DataProvider.vb:295
      LMControlController.GetLMControl() in C:\inetpub\records\App_Code\BLL\LMControlCtrl.vb:12
      subscription_Default.Page_Load(Object sender, EventArgs e) in C:\inetpub\records\subscription\Default.aspx.vb:11
      System.Web.UI.Control.LoadRecursive() +71
      System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3048