我想创建一个模拟的 SQL 服务器,我给它一个日志文件来模拟。
我不想处理一个必须输入虚拟数据的完整的 Sql 服务器,而是一个使用 C# TcpClient 的简单脚本(日志)猴子。
它将模拟客户端程序连接/登录到它的位置(没有实际登录,只是获得预设的“登录成功”),并且还发送查询(但结果来自日志文件,因此不涉及实际的表或数据库) .
目前我只能想象制作一个 SQL 客户端并基本上监视它与实际 sql 服务器之间的确切 TCP 通信。但是 SQL 已经存在多久了,我想知道是否已经有解决方案,所以我不必完全重新发明轮子。
重点是针对 sim 服务器运行已发布的应用程序版本,以重新创建在其他地方遇到的任何错误的情况。我有日志,它还告诉我给出了什么响应,但不是在 tcp 字节数组级别。
两个虚拟化选项:TestContainers 和 Docker 上的 SQL Server。这些实际上是成熟的 SQL Server 实例,可以以轻量级方式启动,当您完成代码时,它们就消失了。不完全是我认为您所要求的,但也许更好。