未声明 Autofac 作用域

Autofac scope is not declared

我正在按照此处的说明进行操作: https://autofaccn.readthedocs.io/en/latest/resolve/parameters.html

但是我得到以下行 "Scope is not declared"

Dim myClass As MyClass = scope.Resolve(Of MyClass)(New NamedParameter("configSectionName", "sectionName"))

或:

var myClass = scope.Resolve<MyClass>(new NamedParameter("configSectionName", "sectionName"));

这是一个代码隐藏文件,我只是想将一个参数传递给构造函数。

在 C# 或 VB.net 中的任何建议,或者只是关于可能出错的地方的指针

根据问题编辑,此解决方案基于 c#

您似乎没有使用 Build() 构建构建器,或者没有按应有的方式注册 MyClass

ContainerBuilder builder = new ContainerBuilder();

builder.Register((c, p) => new MyClass(p.Named<string>("configSectionName")));

现在构建容器:

IContainer scope = builder.Build();

MyClass log = scope.Resolve<MyClass>(new NamedParameter("configSectionName", "sectionName"));