我们使用dotnet和autofac会遇到一些行为问题。
我有一个ViewModel,它引用了一个" ServceClient" (命名空间以' Service.Client'结尾)。我想做的是,在我的Startup.cs中加载所有以' Service.Client'并使用Autofac从该程序集扫描和加载模型。我们注意到这样做不会按预期加载程序集。
var assemblies = Assembly.GetEntryAssembly().GetReferencedAssemblies()
.Where(x => x.Name.EndsWith("Service.Client")
.Select(x => Assembly.Load(x)).ToList();
我们必须做的是在Startup.cs中有一个类型列表,如
var ref = new ArrayList() { typeof(..Servce.Client) }
通过这样做,引用的程序集不在.GetReferencedAssemblies()
。
我的问题是,我怎么能告诉编译器这个程序集被DI引用和使用,所以不要优化它?要确保我们有一个假的'这是一个很大的痛苦。在我们的创业公司中提及。
编辑指定:ASP.net NetCore 2.0 - 针对netcoreapp2.0的MVC应用程序和我们引用的库目标是netstandard2.0