我是ASP .NET Core的新手,几乎不需要帮助。我已经使用个人身份验证创建了ASP .NET Core 2.0 MVC项目。现在,我想在我的AccountController中访问Current ApplicationDbContext。通过搜索,我发现我们可以像这样的代码一样使用依赖注入。
private readonly ApplicationDbContext _context;
public AccountController(ApplicationDbContext context)
{
_context = context;
}
此方法在Scaffolded AccountController以外的所有其他控制器上都可以正常工作,并且在运行的项目上会产生以下错误:
InvalidOperationException: Multiple constructors accepting all given argument types have been found in type 'PacePreneur.Controllers.AccountController'. There should only be one applicable constructor.
我知道这个错误是由于这个新的构造函数造成的,因为AccounntController已经有一个构造函数,但是我不知道如何使用它来获取当前的DbContext。我仍在寻找其他解决方案。
PS:对不起,这是一个无意义的问题。
答案 0 :(得分:1)
仅制作一个构造函数,并确保该构造函数接受第一个构造函数所做的所有操作,但将library(mice)
library(miceadds)
library(estimatr)
# imputation of the dataset: use six imputations
data(data.ma01)
dat <- data.ma01[, -c(1)] # note I keep idschool in data
imp <- mice::mice( dat , maxit = 3, m = 6)
datlist <- miceadds::mids2datlist(imp)
# linear regression with cluster robust standard errors
mod <- lapply(
datlist,
function (dat) {
estimatr::lm_robust(read ~ paredu + female, dat, clusters = idschool)
}
)
# subset
mod <- lapply(
datlist,
function (dat) {
estimatr::lm_robust(read ~ paredu + female, dat, clusters = idschool, subset = urban == 1)
}
)
# weights
mod <- lapply(
datlist,
function (dat) {
estimatr::lm_robust(read ~ paredu + female, dat, clusters = idschool, weights = studwgt)
}
)
# note that you can use the `se_type` argument of lm_robust()
# to change the vcov estimation
# extract parameters and covariance matrix
betas <- lapply(mod, coef)
vars <- lapply(mod, vcov)
# conduct statistical inference
summary(pool_mi( qhat = betas, u = vars ))
添加为另一个参数。因此,如果您的原始构造函数采用了参数ApplicationDbContext
,a
,请删除新的构造函数,并将b
添加到现在需要dbcontext
,a
的构造函数中b
,a
,b
–