加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

.net – 使用自动配置的localdb进行单元测试;我该怎么清理?

发布时间:2020-12-12 16:33:31 所属栏目:MsSql教程 来源:网络整理
导读:我已经配置了一个.mdf文件以及一个localdb连接字符串,用于单元测试,如下所示: connectionStrings add name="TestData" providerName="System.Data.SqlClient" connectionString="Data Source=(localdb)v11.0; AttachDBFilename='|DataDirectory|TestData.m
我已经配置了一个.mdf文件以及一个localdb连接字符串,用于单元测试,如下所示:
<connectionStrings>
        <add name="TestData" providerName="System.Data.SqlClient" connectionString="Data Source=(localdb)v11.0; AttachDBFilename='|DataDirectory|TestData.mdf'; Integrated Security=True"/>
</connectionStrings>

一旦我配置了我的测试正确的部署文件,这可以很好地工作:.mdf的副本附加到LocalDB的默认实例,SqlClient连接到它,而没有配置的细节.它只是工作.

但是我该如何清理?在我的本地盒子上,我可以定期使用SSMS手动分离旧的测试数据库,但是在CI服务器上,显然可以使单元测试清理干净.

有没有类似的自动化方法来使本地数据库脱离实例?

解决方法

这是我如何删除localDB数据库.我不喜欢的事情是.mdf也被删除.我通过将它复制到一个tem目录,并使用副本创建数据库来克服这个问题.
var sc = new Microsoft.SqlServer.Management.Common.ServerConnection(your localDB SqlConnection here);
var server = new Microsoft.SqlServer.Management.Smo.Server(sc);
server.KillDatabase(dbName here);

希望这可以帮助菲尔

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读