4

我有使用 SharpSVN dll 和 NServicebus dll 的 ac# 应用程序,它编译得很好,但是当它执行时(在初始化总线时)它会抛出以下错误

无法加载文件或程序集 'file:///C:\Repositories\Repo\hooks\SharpSvn-DB44-20-Win32.dll' 或其依赖项之一。该模块应包含程序集清单。

我该如何解决上述问题。

提前感谢苏珊塔

4

5 回答 5

4

Exclude the sharpsvn dlls from the NServiceBus assemblyscanning by configuring NSB with a explicit list of assemblies toi scan:

Configure.With("List of your assemblies that contain messagehandlers")...

Make sure to include NServiceBus.core.dll in the list if you're using the Saga feature.

Hope this helps!

于 2010-01-05T13:33:45.680 回答
2

苏珊塔,

我们最近提交了一个额外的 API,它允许您指定不加载哪些程序集,这可以让您更轻松,如下所示:

Configure.With(AllAssemblies.Except("SharpSvn-DB44-20-Win32.dll"))... // 其余的配置

于 2010-01-26T13:15:41.470 回答
1

The problem get resolved by using the following bus configuration.

Bus = NServiceBus.Configure.With(typeof(IMessage).Assembly, typeof(CompletionMessage).Assembly) .SpringBuilder().MsmqSubscriptionStorage().XmlSerializer().MsmqTransport() .IsTransactional(true).PurgeOnStartup(false).UnicastBus().ImpersonateSender(false) .LoadMessageHandlers().CreateBus().Start();

Thanks to Andreas

于 2010-01-12T09:29:29.437 回答
1

SharpSvn-DB44-20-Win32.dll 是 SharpSvn.dll 的可选辅助 dll。它仅包含非托管代码。

它支持直接访问文件系统上的 BDB 存储库。如果您只使用 fsfs (file://) 和/或远程存储库,则不需要此 DLL。

SASL dll 也是可选的,但是当您想使用 svn:// 存储库时需要它。

于 2010-01-05T12:06:06.587 回答
0

我不确定这是否对您有帮助,但我偶然发现了这个线程:

http://social.msdn.microsoft.com/Forums/en/vsdebug/thread/9ad17869-63cc-4529-bfaf-9099db500e0d

似乎有几个人在构建/运行具有相同名称的程序集时看到了此错误,例如:

SomeAssembly.exe
SomeAssembly.dll

这是否适用于您的情况?

于 2010-01-05T11:02:53.883 回答