0

我正在为 Windows Azure 开发一个应用程序,并且刚刚开始使用存储 API 的 2.1.0.4 版(存储模拟器尚不支持最新版本)使用 azure 表存储。当我现在尝试执行TableOperation类似的操作时:

cloudTable.Execute(TableOperation.Insert(entity));

我得到以下异常:

“Microsoft.WindowsAzure.Storage.Table.TableOperation”类型存在于“Microsoft.WindowsAzure.Storage.dll”和“Microsoft.WindowsAzure.Diagnostics.StorageUtility.dll”中

我怎样才能让它工作?
我是否使用了不兼容的诊断版本(它来自 Azure SDK 2.2)?

4

2 回答 2

2

免责声明,我在 Microsoft 的团队提供存储 SDK 库。

诊断库使用特殊的子包来避免与用户选择的存储 sdk 依赖项发生任何版本冲突。为此,他们基本上将存储库及其依赖项 (odatalib) 注入到此实用程序 dll 中。但是,这些类型被标记为内部类型,因此您不应该看到此编译器错误,因为内部类型应该对您隐藏。我试图通过使用 SDK 2.2 创建一个新的云项目并添加对您提到的 StorageUtility.dll 的引用来重现这一点,并且在使用存储类型时没有收到类似的编译器错误。你能提供更多关于你的复制品、项目设置等的信息吗?

谢谢

于 2014-02-03T23:25:08.540 回答
0

作为一种解决方法,我使用了外部别名功能:
当两个引用的程序集都定义类型 A.A1 时出现问题

但我仍然想要一个“不错的解决方案”......

于 2014-02-02T09:53:30.843 回答