这是不引用多个已定义相同类型的程序集的问题(我知道在该方案中使用alias
)。
我的问题是我正在编写System.Data.Services.Client.DataServiceContext
类型的帮助程序库。我想让我的库与该类的任何版本一起使用。我遇到的问题是它最初是在带有.NET 3.5 Framework的System.Data.Services.Client.dll程序集中定义的。从那时起,Microsoft在名为Microsoft.Data.Services.Client.dll。
当我的库被另一个项目使用时,它可以与多个版本的Microsoft dll一起使用,但它不能使用随框架发布的程序集。如果我更改我的库以使用系统程序集,那么它将无法使用Microsoft程序集。
我想到了程序集重定向,但如果程序集名称不同,则无法正常工作。
是否有人知道解决方案,或者我将不得不决定我的库将使用哪个程序集(或提供我的库的多个版本)?