asp.net-mvc – 使用sqlserver express时不创建数据库的Entity F
发布时间:2020-12-16 09:52:00 所属栏目:asp.Net 来源:网络整理
导读:使用SQL Express时,实体框架不会创建我的数据库,但如果我使用SQL Server CE,它可以正常工作. 我一直试图解决这个问题几天,但可能是我对ASP.NET和MVC缺乏经验. ConnectionStrings:connectionStrings !-- add name="CRM" connectionString="data source=|DataD
使用SQL Express时,实体框架不会创建我的数据库,但如果我使用SQL Server CE,它可以正常工作.
我一直试图解决这个问题几天,但可能是我对ASP.NET和MVC缺乏经验. ConnectionStrings: <connectionStrings> <!-- <add name="CRM" connectionString="data source=|DataDirectory|CRM.sdf" providerName="System.Data.SqlServerCe.4.0" />--> <add name="CRM" connectionString="data source=.SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|CRM.mdf;User Instance=true" providerName="System.Data.SqlClient" /> <add name="ApplicationServices" connectionString="data source=.SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" /> </connectionStrings> 堆栈跟踪: System.InvalidOperationException was caught Message=Unable to complete operation. The supplied SqlConnection does not specify an initial catalog. Source=System.Data.Entity StackTrace: at System.Data.SqlClient.SqlProviderServices.GetDatabaseName(SqlConnection sqlConnection) at System.Data.SqlClient.SqlProviderServices.DbCreateDatabase(DbConnection connection,Nullable`1 commandTimeout,StoreItemCollection storeItemCollection) at System.Data.Objects.ObjectContext.CreateDatabase() at System.Data.Entity.Internal.DatabaSEOperations.Create(ObjectContext objectContext) at System.Data.Entity.Database.Create() at System.Data.Entity.CreateDatabaseIfNotExists`1.InitializeDatabase(TContext context) at System.Data.Entity.Internal.InternalContext.<>c__DisplayClass5.<PerformDatabaseInitialization>b__3() at System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action) at System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization() at System.Data.Entity.Internal.LazyInternalContext.<InitializeDatabase>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.get_InternalContext() at System.Data.Entity.Internal.Linq.InternalSet`1.ActOnSet(Action action,EntityState newState,Object entity,String methodName) at System.Data.Entity.Internal.Linq.InternalSet`1.Add(Object entity) at System.Data.Entity.DbSet`1.Add(TEntity entity) at MvcApplication1.Controllers.CustomerController.Create(Customer customer) in C:UsershlcoleDocumentsRegProjectsMvcApplication1MvcApplication1ControllersCustomerController.cs:line 55 InnerException: 解决方法
就像它说的那样,你没有在连接字符串中提供初始目录= __ name__.
SqlCe是为应用程序的目的而旋转的本地文件 – 不涉及多个数据库.但是,SQLEXPRESS可以托管并提供多个数据库,从而提供初始目录. 将以下内容添加到connectionString: ;Initial Catalog=__name__ 其中__name__是您要使用的数据库的名称. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
推荐文章
站长推荐
- asp.net-core – 使用新的signalR for DotNet核心
- asp.net – 使用回发解析.Net页面
- asp.net-mvc-3 – 专门针对Azure的代码?
- 单元测试 – 使用HttpRequestMessage对Azure功能
- IIS ASP.Net网站 – ManagedPipelineHandler错误
- 模型 – 视图 – 控制器 – ASP.NET MVC:将View
- asp.net – 使用Post后面的Post方法重定向到另一
- asp.net – 无法加载文件或程序集…数组下标超出
- ASP.NET中TextBox使用Ajax控件显示日期不全的问题
- asp.net – 忽略在IIS中为代码400(错误请求)配置
热点阅读