0

我想获取所有过程代码,但在 coun() 工作正常时出现错误“方法 'all' 没有重载需要 0 个参数”

private static void Processor()
    {
        IUnitOfWorkManager _unitOfWorkManager = IocManager.Instance.Resolve<IUnitOfWorkManager>();
        IDbPerTenantConnectionStringResolver _connectionStringResolver = IocManager.Instance.Resolve<IDbPerTenantConnectionStringResolver>(); ;
        IDbContextResolver _dbContextResolver = IocManager.Instance.Resolve<IDbContextResolver>();
        var srcConnectionString = "Server=NABIIL\\SQLEXPRESS; Database=db-qa; Trusted_Connection=True;"; //ConnectionStringHelper.GetConnectionString("Default");
        var targetConnectionString = "Server=NABIIL\\SQLEXPRESS; Database=db-Migrated; Trusted_Connection=True;";  //ConnectionStringHelper.GetConnectionString("Target");
        DbContext srcContext, targetContext;
        Debugger.Break();
        var procedureCode = "";
        using (srcContext= _dbContextResolver.Resolve<DbContext>(srcConnectionString, null))
        {
            //var items = srcContext.Patients.Count();
            procedureCode = srcContext.ProcedureCodes.All();
            Debugger.Break();

            //_unitOfWorkManager.Current.SaveChanges();
        }

        using (targetContext = _dbContextResolver.Resolve<DbContext>(targetConnectionString, null))
        {
            Debugger.Break();
            //var items = targetContext.Patients.Count();
            targetContext.Patients.add(procedureCode);
            //_unitOfWorkManager.Current.SaveChanges();
        }
    }
4

1 回答 1

1

看起来您正在尝试将列表中的所有项目存储到变量中。

All方法是一种适用于集合的方法。这意味着这srcContext.ProcedureCodes已经是您试图获得的价值。(您可能仍然需要调用ToList()它)

Count是列表中的一种方法,它将计算该列表中的项目数,因此srcContext.ProcedureCodes.Count();将为您提供srcContext.ProcedureCodes.

All是一个带参数的方法,即 All 应用于列表的所有元素的函数。这个函数必须有一个列表类型的参数 All works on,并且必须返回一个boolean值。如果将该函数应用于列表中的所有元素,该方法All将返回自身。truetrue

于 2020-02-27T15:08:55.637 回答