1

最近我正在使用 SqlKATA 查询生成器。我按照此处所述的步骤进行操作。在解决了一些错误后,当我的代码中没有红色下划线的情况时,我运行了我的解决方案。然后我收到错误 CS0308。当我尝试解决我的解决方案时,我评论了 Startup.cs 中的一个部分,我在 ConfigureServices 方法中找到它:

services.Add<QueryFactory>(() => { var connection = new SqlConnection( "Data Source=serverName\serverInstance;Initial Catalog=databaseName;Integrated Security=True"); var compiler = new SqlServerCompiler(); return new QueryFactory(connection, compiler); });

之后,它以我设置的显示文本顺利运行。但是当我取消注释该部分时,它再次向我显示了错误。

任何想法为什么?任何帮助将非常感激! 编辑: var connection = new SqlConnection( "Data Source=serverName\\serverInstance;Initial Catalog=databaseName;Integrated Security=True");

4

1 回答 1

2

我不知道这是否仍然相关,但是我通过构造函数 DI 将 QueryFactory 对象注入我的 Query 处理程序的方式在 Startup.cs - ConfigureServices 中是这样的:

        services.AddScoped(factory =>
        {
            return new QueryFactory
            {
                Compiler = new SqlServerCompiler(),
                Connection = new SqlConnection(connStr),
                Logger = compiled => Console.WriteLine(compiled)
            };
        });

PS:这是.NET Core

于 2019-04-20T09:12:07.823 回答