我們有一個使用WCF 5.0和WindowsAzure SDK的項目。使用Microsoft.Data.Services.Client.dll而不是System.Data.Services.Client.dll會導致Azure.StorageClient出現問題
有兩個引用Microsoft.Data.Services.Client.dll和System.Data.Services.Client.dll,它們有衝突。如果我刪除了系統DLL(根據this),我無法使用windowsAzure SDK。如果我刪除了Microsoft DLL,我無法利用WCF特別是OData 3.0版的新功能。
之後,我刪除系統DLL參考:\ Program Files文件 (x86)的\微軟WCF數據 服務\ 5.0:
無法從 「System.Data.Services.Client.SaveChangesOptions [C轉換\ bin.NETFramework \ Microsoft.Data.Services.Client.dll]」到 'System.Data.Services.Client.SaveChangesOptions'
其他信息:
爲 最好重載方法匹配 'Microsoft.WindowsAzure.StorageClient.TableServiceContext.SaveChangesWithRetries(System.Data.Services.Client.SaveChangesOptions)' 有一些無效參數
類型「System.Data.Services .Client.DataServiceContext'在沒有引用的程序集中定義爲 。您必須添加對組件'System.Data.Services.Client,版本= 3.5.0.0, Culture = neutral,PublicKeyToken = b77a5c561934e089'的引用。
如果我刪除提及Microsoft.Data.Services.Client並添加引用System.Data.Services.Client那麼我們沒有錯誤 - 我們還沒有得到WCF 5.0!
我最近更新了對WCF 5.0的引用,但沒有發現任何問題。唯一不同於你所做的是,我已經在我的項目中替換了其他引用(如System.Data.Services到Microsoft.Data.Services)。您的問題似乎與Azure.StorageClient不相關,但與命名空間衝突有關。 – Chopin
不知何故Azure.Storage.Client需要System.Data.Services.Client而不是Microsoft.Data.Services.Client。我會更新我的原始帖子以顯示其他錯誤。 – Telmo