我有一個使用SharpSVN DLL和NServicebus DLL,它編譯細交流#應用程序,但是當它被執行(在初始化總線的時間)它引發以下錯誤「無法加載文件或程序集」/「或其某個依賴項,該模塊應包含程序集清單。」
無法加載文件或程序集「 file:/// C:\ Repositories \ Repo \ hooks \ SharpSvn-DB44-20-Win32.dll'或其依賴項之一。預計該模塊將包含程序集清單。
我該如何解決上述問題。
提前感謝 Susanta
我有一個使用SharpSVN DLL和NServicebus DLL,它編譯細交流#應用程序,但是當它被執行(在初始化總線的時間)它引發以下錯誤「無法加載文件或程序集」/「或其某個依賴項,該模塊應包含程序集清單。」
無法加載文件或程序集「 file:/// C:\ Repositories \ Repo \ hooks \ SharpSvn-DB44-20-Win32.dll'或其依賴項之一。預計該模塊將包含程序集清單。
我該如何解決上述問題。
提前感謝 Susanta
我不知道這是否會幫助你或沒有,但我無意中發現了這個線程:
http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/9ad17869-63cc-4529-bfaf-9099db500e0d
看來,有幾個人
SomeAssembly.exe
SomeAssembly.dll
難道這是APPLICA:建設時/名稱相同的運行組件,因此,例如看到這個錯誤你的情況?
SharpSvn-DB44-20-Win32.dll是SharpSvn.dll的可選幫助DLL。它只包含非託管代碼。
它包含對直接訪問文件系統上的BDB存儲庫的支持。如果只使用fsfs(file://)和/或遠程存儲庫,則不需要此DLL。
SASL dll也是可選的,但是當你想要使用svn://存儲庫時需要這樣做。
如果我只在我的項目中使用sharpsvn dll或nServicebus dll,那麼不會出現問題,但是當我同時使用SharpSvn和Nservicebus(僅執行時間,而不是編譯時間)時,上述錯誤會引發。請給出解決方案。 – 2010-01-05 12:54:13
與組件的顯式列表配置NSB排除在NServiceBus assemblyscanning的sharpsvn dll文件掃描TOI:
Configure.With( 「你的組件包含messagehandlers清單」)...
製作如果您使用的是Saga功能,請確保在列表中包含NServiceBus.core.dll。
希望這會有所幫助!
我配置了三個dll(NServiceBus.dll,NServiceBus.core.dll,NServiceBus.ObjectBuilder.CastleWindsor.dll),那麼這個錯誤就是 類型NServiceBus.Unicast.Transport.CompletionMessage未在序列化程序中註冊。檢查它是否出現在要掃描的已配置程序集/類型的列表中。 請告訴我爲什麼會出現這個錯誤? – 2010-01-06 07:56:17
完成消息存在於核心dll中,因此您應該對提到的dll有所瞭解。嘗試使用:typeof(CompletionMessage).Assembly指定核心程序集並查看是否有幫助? – 2010-01-06 20:03:15
你能詳細說明嗎? – 2010-01-07 07:13:02
使用以下總線配置可以解決問題。
總線= NServiceBus.Configure.With(typeof運算(即時聊天).Assembly的typeof(CompletionMessage).Assembly) .SpringBuilder()。MsmqSubscriptionStorage()。XmlSerializer的()。MsmqTransport() .IsTransactional(真).PurgeOnStartup(false).UnicastBus()。ImpersonateSender(false) .LoadMessageHandlers()。CreateBus()。開始();
由於安德烈亞斯
Susanta,
最近,我們犯了一個額外的API,它可以是你的東西更容易讓你指定哪個組件不加載如下:
配置.With(AllAssemblies.Except(「SharpSvn-DB44-20-Win32.dll」))... //其餘配置
不,這不適用。 – 2010-01-05 11:39:46