Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# EF Core dbcontext架子工不触发OperationReportHandler事件_C#_Entity Framework_.net Core_Entity Framework Core - Fatal编程技术网

C# EF Core dbcontext架子工不触发OperationReportHandler事件

C# EF Core dbcontext架子工不触发OperationReportHandler事件,c#,entity-framework,.net-core,entity-framework-core,C#,Entity Framework,.net Core,Entity Framework Core,我编写了.NETcoredbcontext scaffolder方法来生成实体类和dbcontext。一切正常,但错误列表、警告列表、信息列表、详细列表始终为空。。。如何修复OperationReportHandler以使其正常工作 var errorList = new List<string>(); var warningList = new List<string>(); var infoList = new List

我编写了.NETcore
dbcontext scaffolder
方法来生成实体类和dbcontext。一切正常,但错误列表、警告列表、信息列表、详细列表始终为空。。。如何修复
OperationReportHandler
以使其正常工作

        var errorList = new List<string>();
        var warningList = new List<string>();
        var infoList = new List<string>();
        var verboseList = new List<string>();

        var reporter = new OperationReporter(
                        new OperationReportHandler(
                            m => errorList.Add((m)),
                            m => warningList.Add((m)),
                            m => infoList.Add((m)),
                            m => verboseList.Add((m))));

        var serviceCollection = new ServiceCollection()
            .AddScaffolding(reporter)
            .AddSingleton<IOperationReporter, OperationReporter>()
            .AddSingleton<IOperationReportHandler, OperationReportHandler>();

        IDesignTimeServices provider = new Microsoft.EntityFrameworkCore.Design.Internal.SqlServerDesignTimeServices();
        provider.ConfigureDesignTimeServices(serviceCollection);

        var serviceProvider = serviceCollection.BuildServiceProvider();

        var generator = serviceProvider.GetService<IModelScaffolder>();

        var filePaths = generator.Generate(
                                    Config.ConnectionString,
                                    Config.Tables,
                                    Config.Schemas,
                                    Config.ProjectPath,
                                    Config.OutputPath,
                                    Config.RootNamespace,
                                    Config.ContextName,
                                    false, //useDataAnnotations
                                    Config.OverwriteFiles,
                                    Config.UseDatabaseNames);
var errorList=新列表();
var warningList=新列表();
var infoList=新列表();
var verboseList=新列表();
var reporter=新的OperationReporter(
新OperationReportHandler(
m=>errorList.Add((m)),
m=>warningList.Add((m)),
m=>infoList.Add((m)),
m=>verboseList.Add((m));
var servicecolection=新servicecolection()
.add(记者)
.AddSingleton()
.AddSingleton();
IDesignTimeServices provider=新的Microsoft.EntityFrameworkCore.Design.Internal.SqlServerDesignTimeServices();
provider.ConfigureDesignTimeServices(serviceCollection);
var serviceProvider=servicecolection.BuildServiceProvider();
var generator=serviceProvider.GetService();
var filepath=generator.Generate(
Config.ConnectionString,
Config.Tables,
Config.Schemas,
Config.ProjectPath,
Config.OutputPath,
Config.RootNamespace,
Config.ContextName,
false,//useDataAnnotations
Config.OverwriteFiles,
Config.UseDatabaseNames);
更改此行

.AddSingleton<IOperationReporter, OperationReporter>()
.AddSingleton<IOperationReporter>(reporter)
var serviceCollection = new ServiceCollection()
    .AddEntityFrameworkDesignTimeServices(reporter);