C# 无法先用代码创建数据库
我正在使用Visual Studio 2015、Entity Framework v6和SQL Server 2016 Express。过去,我使用C# 无法先用代码创建数据库,c#,wpf,entity-framework-6,sql-server-2016-express,C#,Wpf,Entity Framework 6,Sql Server 2016 Express,我正在使用Visual Studio 2015、Entity Framework v6和SQL Server 2016 Express。过去,我使用SqlConnection和SqlCommand创建了一个数据库,并将SQL填充到字符串中 现在,我正在自学英语六级。在简单代码第一个示例(非常简单)中,我复制并粘贴了我的代码,但仍然没有看到在SSMS中创建的数据库。我的代码也不会给我带来任何错误 我没有粘贴代码,而是做了一个屏幕截图。我希望有人能指出我是什么,或者教程遗漏了什么 [编辑] 根据S
SqlConnection
和SqlCommand
创建了一个数据库,并将SQL填充到字符串中
现在,我正在自学英语六级。在简单代码第一个示例(非常简单)中,我复制并粘贴了我的代码,但仍然没有看到在SSMS中创建的数据库。我的代码也不会给我带来任何错误
我没有粘贴代码,而是做了一个屏幕截图。我希望有人能指出我是什么,或者教程遗漏了什么
[编辑]
根据Sampath的建议,我最终得到以下错误:
[编辑-已解决,排序]
我将相同的代码应用到另一台具有相同设置的机器上,代码正常工作。因此,我怀疑SQL Server中存在一些损坏,或者某些注册表不正确。我卸载每个SQL Server版本和相关工具,手动删除所有文件夹和文件,然后重新安装SQL Server Express 2016和工具。然后我的代码工作
我不认为这是一个解决方案,但如果有人能建议可能导致此问题的原因,我将尝试重新创建它或发布一个真正的解决方案。您必须在
web.config
文件中提供连接字符串名称,如下所示
上下文:
public SchoolContext(): base("MySchoolDB")
{
}
App.config文件
<add name="MySchoolDB" connectionString="Server=localhost;
Database=YourDBName;Trusted_Connection=True;" providerName="System.Data.SqlClient" />
您必须在配置连接字符串后将实体添加到数据库中,然后DBContext将创建数据库。下面是一个连接字符串示例:
您是否在本地安装了SQL Server Express?什么版本?SQL Server Express 2016和SQL Server Management Studio。请查看已编辑的问题。单击例外[查看详细信息]并显示有关此例外的更多信息我在中结束了应用程序处于中断模式
错误。您必须在连接字符串上设置数据库
名称。我已更新了我的帖子。或者您可以共享您的连接字符串详细信息吗?我已放置了一个链接。也请查看。谢谢。但即使我有Database=MySchoolDB
我仍然收到相同的错误。这不是一个web应用程序,所以我使用App.config。我会把它留为空白,因为数据库还不存在,代码首先应该为我创建这个数据库,而无需编写任何明确的内容,正如教程中在您的链接中提到的那样。