title: Cannot attach the file as database / The underlying provider failed on Open
body: <p>I have an MVC3 application using the Entity Framework.  I haven't used this application in about a year.  Recently, I opened it up on a new PC and tried to run in debug mode and hit the following exception/stack trace in debug.  The main exceptions seem to be "Cannot attach the file as database" and "The underlying provider failed on Open".  I searched for these errors on stack overflow and the answers I found don't seem to match this situation.  For example, one of the answers for "Cannot attach the file as database" suggests that an old version of the db might be lying around on the local db, but I don't see any databases in the local database when I browse to localdb in visual studio.  </p>
  
  <p>I am looking for guidance about what to investigate next to troubleshoot this issue. Any suggestions?</p>
  
  <p>The actual code where it fails is:</p>
  
  <pre><code>            var currentHunt = (from ph in this.repo.GetAllPuzzleHunts()
                             orderby ph.PuzzleHuntId descending
                             select ph).FirstOrDefault();
  </code></pre>
  
  <p>This is the first time the web app tries to get data from the db via the Entity Framework.</p>
  
  <p>FWIW this machine has Entity Framework 6.0, and I'm using Visual Studio 2012.</p>
  
  <p>Exception/Stack trace follow:</p>
  
  <pre><code>System.Data.DataException was unhandled by user code
    HResult=-2146233087
    Message=An exception occurred while initializing the database. See the InnerException for details.
    Source=EntityFramework
    StackTrace:
         at System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action)
         at System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization()
         at System.Data.Entity.Internal.LazyInternalContext.&lt;InitializeDatabase&gt;b__4(InternalContext c)
         at System.Data.Entity.Internal.RetryAction`1.PerformAction(TInput input)
         at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(Action`1 action)
         at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabase()
         at System.Data.Entity.Internal.InternalContext.Initialize()
         at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)
         at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
         at System.Data.Entity.Internal.Linq.InternalSet`1.GetEnumerator()
         at System.Data.Entity.Infrastructure.DbQuery`1.System.Collections.Generic.IEnumerable&lt;TResult&gt;.GetEnumerator()
         at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
         at System.Linq.OrderedEnumerable`1.&lt;GetEnumerator&gt;d__0.MoveNext()
         at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source)
         at GutolMvcApp.Controllers.HomeController.Index() in c:\Users\jordanat\Documents\Visual Studio 2012\Projects\Gutol\Gutol\GutolMvcApp\Controllers\HomeController.cs:line 25
         at lambda_method(Closure , ControllerBase , Object[] )
         at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters)
         at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
         at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
         at System.Web.Mvc.Async.AsyncControllerActionInvoker.&lt;&gt;c__DisplayClass42.&lt;BeginInvokeSynchronousActionMethod&gt;b__41()
         at System.Web.Mvc.Async.AsyncResultWrapper.&lt;&gt;c__DisplayClass8`1.&lt;BeginSynchronous&gt;b__7(IAsyncResult _)
         at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End()
         at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)
         at System.Web.Mvc.Async.AsyncControllerActionInvoker.&lt;&gt;c__DisplayClass37.&lt;&gt;c__DisplayClass39.&lt;BeginInvokeActionMethodWithFilters&gt;b__33()
         at System.Web.Mvc.Async.AsyncControllerActionInvoker.&lt;&gt;c__DisplayClass4f.&lt;InvokeActionMethodFilterAsynchronously&gt;b__49()
    InnerException: System.Data.Entity.Core.EntityException
         HResult=-2146233087
         Message=The underlying provider failed on Open.
         Source=EntityFramework
         StackTrace:
              at System.Data.Entity.Core.EntityClient.EntityConnection.Open()
              at System.Data.Entity.Core.Objects.ObjectContext.EnsureConnection()
              at System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T](Func`1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction, Boolean releaseConnectionOnSuccess)
              at System.Data.Entity.Core.Objects.ObjectQuery`1.&lt;&gt;c__DisplayClassb.&lt;GetResults&gt;b__9()
              at System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func`1 operation)
              at System.Data.Entity.Core.Objects.ObjectQuery`1.GetResults(Nullable`1 forMergeOption)
              at System.Data.Entity.Core.Objects.ObjectQuery`1.&lt;System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator&gt;b__0()
              at System.Lazy`1.CreateValue()
              at System.Lazy`1.LazyInitValue()
              at System.Lazy`1.get_Value()
              at System.Data.Entity.Internal.LazyEnumerator`1.MoveNext()
              at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source)
              at System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.&lt;GetElementFunction&gt;b__1[TResult](IEnumerable`1 sequence)
              at System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.ExecuteSingle[TResult](IEnumerable`1 query, Expression queryRoot)
              at System.Data.Entity.Core.Objects.ELinq.ObjectQueryProvider.System.Linq.IQueryProvider.Execute[TResult](Expression expression)
              at System.Data.Entity.Internal.Linq.DbQueryProvider.Execute[TResult](Expression expression)
              at System.Linq.Queryable.FirstOrDefault[TSource](IQueryable`1 source)
              at System.Data.Entity.Internal.EdmMetadataRepository.QueryForModelHash(Func`2 createContext)
              at System.Data.Entity.Internal.InternalContext.QueryForModelHash()
              at System.Data.Entity.Internal.ModelCompatibilityChecker.CompatibleWithModel(InternalContext internalContext, ModelHashCalculator modelHashCalculator, Boolean throwIfNoMetadata)
              at System.Data.Entity.Internal.InternalContext.CompatibleWithModel(Boolean throwIfNoMetadata)
              at System.Data.Entity.Database.CompatibleWithModel(Boolean throwIfNoMetadata)
              at System.Data.Entity.CreateDatabaseIfNotExists`1.InitializeDatabase(TContext context)
              at System.Data.Entity.Internal.InternalContext.&lt;&gt;c__DisplayClasse`1.&lt;CreateInitializationAction&gt;b__d()
              at System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action)
         InnerException: System.Data.SqlClient.SqlException
              HResult=-2146232060
              Message=Cannot attach the file 'C:\Users\...\Visual Studio 2012\Projects\Gutol\Gutol\GutolMvcApp\App_Data\PuzzleCollateral.mdf' as database 'PuzzleCollateral'.
  </code></pre>
  
  <p>Thanks for your help!</p>