我在哪里可以找到EF6.0数据库映射文件?

时间:2014-01-11 10:20:54

标签: c# asp.net asp.net-mvc entity-framework

我最近重命名了我的VS2013项目,并收到以下错误页面。

  

' /'中的服务器错误应用

     

为上下文' ApplicationDbContext'启用了迁移。但是   数据库不存在或不包含映射表。使用迁移   创建数据库及其表,例如通过运行   '更新,数据库'来自程序包管理器控制台的命令。

     

描述:执行期间发生了未处理的异常   当前的网络请求。请查看堆栈跟踪了解更多信息   有关错误的信息以及它在代码中的起源。

     

异常详细信息:System.InvalidOperationException:迁移是   已启用上下文' ApplicationDbContext'但数据库没有   存在或不包含映射表。使用迁移创建   数据库及其表格,例如通过运行“更新 - 数据库”和“数据库”。   来自程序包管理器控制台的命令。

来源错误:

第33行:{ 第34行:if(User.Identity.IsAuthenticated) 第35行:ViewBag.Email = UserManager.FindById(User.Identity.GetUserId())。电子邮件; 第36行:bll.UpdateLogInStats("索引",User.Identity.GetUserName()); 第37行:ViewBag.versionNumber = bll.GetSiteVersionNumber();

源文件:c:\ Users \ Evolution \ Documents \ Visual Studio 2013 \ Projects \ CompleTrance \ CompleTrance \ Controllers \ HomeController.cs Line:35

堆栈追踪:

[InvalidOperationException:为上下文启用了迁移&#39; ApplicationDbContext&#39;但数据库不存在或不包含映射表。使用迁移创建数据库及其表,例如通过运行“更新 - 数据库”和“数据库”。来自程序包管理器控制台的命令。]    System.Data.Entity.Internal.MigrationsChecker.IsMigrationsConfigured(InternalContext internalContext,Func 1 databaseExists) +147 System.Data.Entity.CreateDatabaseIfNotExists 1.InitializeDatabase(TContext context)+193    System.Data.Entity.Internal。&lt;&gt; c_ DisplayClasse 1.<CreateInitializationAction>b__d() +76 System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action) +60 System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization() +337 System.Data.Entity.Internal.LazyInternalContext.<InitializeDatabase>b__4(InternalContext c) +7 System.Data.Entity.Internal.RetryAction 1.PerformAction(TInput input)+110    System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(Action 1 action) +198 System.Data.Entity.Internal.LazyInternalContext.InitializeDatabase() +73 System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType) +27 System.Data.Entity.Internal.Linq.InternalSet 1.Initialize()+53    System.Data.Entity.Internal.Linq.InternalSet 1.get_InternalContext() +15 System.Data.Entity.Internal.Linq.InternalSet 1.FindAsync(CancellationToken cancellationToken,Object [] keyValues)+18    System.Data.Entity.DbSet 1.FindAsync(CancellationToken cancellationToken, Object[] keyValues) +34 System.Data.Entity.DbSet 1.FindAsync(Object [] keyValues)+13    Microsoft.AspNet.Identity.EntityFramework.EntityStore 1.GetByIdAsync(Object id) +49 Microsoft.AspNet.Identity.EntityFramework.UserStore 1.FindByIdAsync(String userId)+29    Microsoft.AspNet.Identity.d _a.MoveNext()+ 102    System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务)+93    System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)+52    Microsoft.AspNet.Identity.AsyncHelper.RunSync(Func 1 func) +159 Microsoft.AspNet.Identity.UserManagerExtensions.FindById(UserManager 1 manager,String userId)+157    C:\ Users \ Evolution \ Documents \ Visual Studio 2013 \ Projects \ CompleTrance \ CompleTrance \ Controllers \ HomeController.cs中的CompleTranceServer.Controllers.HomeController.Index():35    lambda_method(Closure,ControllerBase,Object [])+62    System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller,Object []参数)+14    System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext,IDictionary 2 parameters) +157 System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary 2个参数)+27    System.Web.Mvc.Async.AsyncControllerActionInvoker.b_ 36(IAsyncResult asyncResult,ActionInvocation innerInvokeState)+22    System.Web.Mvc.Async.WrappedAsyncResult 2.CallEndDelegate(IAsyncResult asyncResult) +29 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+49    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)+32    System.Web.Mvc.Async.AsyncInvocationWithFilters.b _3c()+50    System.Web.Mvc.Async。&lt;&gt; c_ DisplayClass45.b _3e()+225    System.Web.Mvc.Async。&lt;&gt; c_ DisplayClass30.b _2f(IAsyncResult asyncResult)+10    System.Web.Mvc.Async.WrappedAsyncResult 1.CallEndDelegate(IAsyncResult asyncResult) +10 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+49    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult)+34    System.Web.Mvc.Async。&lt;&gt; c_ DisplayClass28.b _19()+26    System.Web.Mvc.Async。&lt;&gt; c_ DisplayClass1e.b _1b(IAsyncResult asyncResult)+100    System.Web.Mvc.Async.WrappedAsyncResult 1.CallEndDelegate(IAsyncResult asyncResult) +10 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+49    System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult)+27    System.Web.Mvc.Controller.b_ 1d(IAsyncResult asyncResult,ExecuteCoreState innerState)+13    System.Web.Mvc.Async.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) +36 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+54    System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)+39    System.Web.Mvc.Controller.b _15(IAsyncResult asyncResult,Controller controller)+12    System.Web.Mvc.Async.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) +28 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+54    System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult)+29    System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult)+10    System.Web.Mvc.MvcHandler.b__4(IAsyncResult asyncResult,ProcessRequestState innerState)+21    System.Web.Mvc.Async.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) +36 System.Web.Mvc.Async.WrappedAsyncResultBase 1.End()+54    System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult)+31    System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result)+9    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()+9514812    System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean&amp; completedSynchronously)+155

版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET版本:4.0.30319.18408

我认为问题是db映射文件包含旧的项目名称,但我没有看到任何可以编辑映射文件以纠正问题的地方。我宁愿不删除数据库并重新创建它,并建议运行&#34; update-database&#34;不起作用,并给我以下错误。

  

无法创建文件&#39; C:\ Users \ Evolution \ Documents \ Visual Studio   2013 \项目\ CompleTrance \ CompleTrance \程序App_Data \ ASPNET-CompleTranceServer-20131116015908.mdf&#39;   因为它已经存在更改文件路径或文件名,然后   重试该操作。 CREATE DATABASE失败。列出了一些文件名   无法创建。检查相关错误。

连接字符串: 这是我的连接字符串    <connectionStrings> <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-CompleTranceServer-20131116015908.mdf;Initial Catalog=aspnet-CompleTranceServer-20131116015908;Integrated Security=True" providerName="System.Data.SqlClient" /> <add name="AWSiteContext" connectionString="Data Source=(localdb)\v11.0; Initial Catalog=AWSiteContext-20140105010431; Integrated Security=True; MultipleActiveResultSets=True; AttachDbFilename=|DataDirectory|AWSiteContext-20140105010431.mdf" providerName="System.Data.SqlClient" /> </connectionStrings>

我不记得为什么我将上下文命名为AWSiteContext。我的项目的旧名称是AncientWorld,所以AW是网站名称的首字母。我的IIS会转到defaultConnection,所以我不确定AWSiteContext是否真的做了什么。它不在其他地方的项目中。

非常感谢任何帮助。感谢。

0 个答案:

没有答案