1

所需的 AppFabric 缓存客户端代码引用了作为客户端安装一部分的这两个程序集:

Microsoft.ApplicationServer.Caching.Client.dll
Microsoft.ApplicationServer.Caching.Core.dll

在 Visual Studio 2010 中定义这些引用将导致程序集在构建时被复制到项目 bin 文件夹中,然后与我们的二进制文件一起重新分发。但是,AppFabric 缓存 EULA 没有明确提及再分发权利,因此这些文件在法律上是不可再分发的。我不确定这是否有意,但是我们的客户最好在安装时为自己获取和安装 AppFabric 缓存,而不是使用可能已过时和/或与 AppFabric 缓存不兼容的重新分发的程序集集群(例如,如果它使用不同的版本)。

但是,AppFabric 缓存安装程序不会将打包的程序集放入 GAC,因此客户端/客户需要这样做以允许我们的代码能够引用它们 - 程序集无法在适当位置引用(在 \Program Files\ AppFabric 1.1 for Windows Server),除非我们明确引用并从特定路径加载程序集,这是不寻常的。

那么我的问题是 - 引用这些程序集的预期使用模式是什么?它们实际上应该是可再分发的,还是我们的客户应该将它们放在 GAC 中,还是有其他选择?

4

1 回答 1

4

就个人而言,我使用 Nuget 来引用 AppFabric 缓存客户端库(在此处打​​包)。这些程序集只是访问缓存集群的 API。您无需在客户端计算机上进行任何特定安装即可使用它们。

这些程序集是您的应用程序的一部分。添加对另一个程序集(如 Automapper、Json.Net 等)的引用时完全相同,它可以帮助您构建应用程序而无需重新发明轮子。因此,将它们包含在您的构建/设置中,将更容易部署。

于 2013-01-16T08:42:08.943 回答