阻止编译器删除(优化)程序集参考

时间:2018-01-19 18:32:47

标签: c# .net asp.net-core autofac .net-standard-2.0

我们使用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

0 个答案:

没有答案