新手在这里。
问题:
当我从VS2017的菜单中打开SQL Server对象资源管理器时,我找不到名为UserRegistryDB
的数据库。
请帮忙。我做了以下。
我已经安装了SQL Server 2017 EXPRESS
我在项目中添加实体框架以供参考。
我在UserDBContext.cs
文件夹
Model
public class UserDBContext : DbContext
{
public DbSet<User> Users { get; set; }
}
我在Model
文件夹
public class User
{
public int Id { get; set; }
public string emailID { get; set; }
public string AppName { get; set; }
public string SessionToken { get; set; }
}
我已将此添加到web.config
:
<connectionStrings>
<add name="UserDBContext"
connectionString="server=.; database= UserRegistryDB; integrated security = true;"
providerName ="System.Data.SqlClient"/>
</connectionStrings>
我构建我的项目并运行它;没有编译错误,建立成功。
我需要帮助解决这个问题:
使用server =的连接字符串有何不同? ,server =(local)?或server =(localdb)
connectionString="server=. ; database= UserRegistryDB; integrated security = true;"
connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=TestDatabase;Integrated Security=True"
由于
答案 0 :(得分:0)
.
和(local)
指的是已安装的默认实例 - 没有任何特定实例名称的实例(将在SQL Server配置管理器中显示为MSSQLSERVER
)。这可以是SQL Server的任何版本 - Express,Web,Standard,Enterprise,Developer等。
(localdb)
指的是已安装的SQL Server Express LocalDB 实例 - 这是一个面向开发人员的SQL Server Express版本,未作为Windows服务安装,一直运行,但只在Visual Studio或应用程序运行时启动并运行