我試圖將WPF入門工具從C#轉換爲VB.net,除了一個區域外,我做得非常好......使用Unity應用程序的依賴注入塊。Unity應用程序塊 - 從C#轉換爲VB示例
我有下面的C#代碼塊:
Type viewModelType = viewModelAssembly.GetType(action.ViewModelTypeName);
var notificationPolicy = unity.AddNewExtension<Interception>()
.RegisterType(typeof(BaseViewModel), viewModelType, action.Name)
.Configure<Interception>()
.SetDefaultInterceptorFor(viewModelType, new VirtualMethodInterceptor())
.AddPolicy("NotificationPolicy");
notificationPolicy.AddMatchingRule(new PropertyMatchingRule("*", PropertyMatchingOption.Set));
notificationPolicy.AddCallHandler<NotifyPropertyChangedCallHandler>();
那我自動轉換到vb.net:
Dim viewModelType As Type = viewModelAssembly.[GetType](action.ViewModelTypeName)
Dim notificationPolicy = unity.AddNewExtension(Of Interception()).RegisterType(GetType(BaseViewModel), viewModelType, action.Name).Configure(Of Interception)().SetDefaultInterceptorFor(viewModelType, New VirtualMethodInterceptor()).AddPolicy("NotificationPolicy")
notificationPolicy.AddMatchingRule(New PropertyMatchingRule("*", PropertyMatchingOption.[Set]))
notificationPolicy.AddCallHandler(Of NotifyPropertyChangedCallHandler)()
的vb.net代碼生成錯誤「後期綁定重載決策不能應用於'RegisterType'因爲訪問實例是一個接口類型「,我不知道如何解決這個問題。我對這個Unity的東西完全陌生,除了MS提供的片段外,我無法找到vb的例子。任何幫助將不勝感激。
感謝所有,
瑞安
編輯:每布拉姆,我添加了額外的支架,但我仍然得到同樣的錯誤。