4
我們的應用程序使用Autofac作爲IoC容器,並利用自動註冊包含廣泛使用的代碼的幾個程序集。清楚地說明自動註冊的程序集
要引用每個組件,通常使用Assembly.GetAssembly(typeof(<type>))
,使用相應組件中的一種類型。然而,這並不是很清楚,因爲通過每種類型都不容易看到哪個程序集被註冊,並且當類型在項目之間移動時也會導致錯誤。
爲了解決這個問題,在有關各組件,我創建了一個名爲Types
那當然有裝配的命名空間的空類,所以我可以做自動註冊這樣的:
builder.RegisterAssemblyTypes(
Assembly.GetAssembly(typeof(Xx.Common.Types)),
Assembly.GetAssembly(typeof(Xx.Core.Types)),
Assembly.GetAssembly(typeof(Xx.Infrastructure.Types)))
.AsSelf()
.AsImplementedInterfaces();
這是當然「死碼」否則。這樣做是一種好的或「聰明」的想法,還是有更好,更習慣的想法?我甚至不敢問這個問題?