gpt4 book ai didi

c# - 添加用于测试的 localdb

转载 作者:行者123 更新时间:2023-11-30 19:55:39 26 4
gpt4 key购买 nike

我首先使用实体​​框架 6 代码。

目前我有一个用于生产的数据库。我想为测试添加一个不同的数据库。我怎么做?

我的测试项目中是否需要另一个连接字符串?

这两个连接字符串应该有什么区别?

我尝试复制连接字符串并更改目录名称,但它导致映射到同一数据库。

请大体上帮助我理解连接字符串的每一部分

谢谢

最佳答案

在本地测试环境使用本地db

您可以将 localdb 用于您的测试环境。Localdb 是本地开发系统上基于文件的数据库,它不需要服务器即可运行,但从应用程序的角度来看,其行为类似于 SQL Server。

我可以描述我将在 Visual Studio 2013 中执行的步骤:

  • 打开“SQL Server 对象资源管理器”窗口
  • 展开以 (localdb)v.11.0 开头的条目
  • 右键单击“数据库”,然后从上下文菜单中单击“添加新数据库”
  • 在我的系统上,这将在我的用户文件夹中创建一个 localdb(mdf 文件),例如C:\Users\USERNAME\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\v11.0
  • 创建数据库后,您可以使用脚本在本地数据库中创建与您的实时环境相匹配的表。例如,您可以使用 SQL Server Management Studio 导出表结构(数据库 -> 任务 -> 生成脚本)
  • 获取连接字符串:打开数据库的上下文菜单(仍在 Visual Studio SQL Server 对象资源管理器中)并选择“属性”。
  • 在 Windows 属性中找到“连接字符串”属性并复制其值。示例:Data Source=(localdb)\v11.0;Initial Catalog=DATABASENAME;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False
  • 使用此连接字符串在您的 web.config 或 app.config 中的 connectionStrings 元素中创建一个新的连接字符串。将值放在 connectionString 属性中。不要更改 providerName 属性。

     <connectionStrings>
    <add name="ConnectionName" connectionString="..." providerName="System.Data.SqlClient" />
    </connectionStrings>
  • 在您的 DbContext 派生类中使用该连接字符串名称:

    public class YourDbContext : DbContext
    {
    public YourDbContext() : base("ConnectionName")
    {
    }
    }

关于c# - 添加用于测试的 localdb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36530679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com