CloudTableClient与.NET Core不兼容?

时间:2018-12-16 16:05:59

标签: .net azure asp.net-core azure-cosmosdb azure-table-storage

我有一个.NET Core 2.2 Web应用程序,我正在尝试与我的Azure Table Storage资源交谈。我到目前为止所拥有的:

using Microsoft.WindowsAzure.Storage;
using Microsoft.Azure.CosmosDB.Table;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace WebApplication1.Repositories
{
    public class AssetRepository
    {
        public AssetRepository()
        {
            CloudStorageAccount storageAccount = CloudStorageAccount.Parse("cstring");
            CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
        }
    }
}

但是,当我将鼠标悬停在CreateCloudTableClient上时,我会看到Reference to type CloudStorageAccount claims it is defined in Microsoft.Azure.Storage.Common but it could not be found.

如何在.NET Core 2.2 Web应用程序中执行基本的表CRUD?

2 个答案:

答案 0 :(得分:5)

您似乎混淆了旧的和较新的程序集。

using Microsoft.WindowsAzure.Storage;
using Microsoft.Azure.CosmosDB.Table;

可以使用对Microsoft.Azure.CosmosDB。*的较新的NuGet引用,也可以对较旧的Microsoft.WindowsAzure.Storage程序集进行使用,但不能同时使用。

例如:

using Microsoft.Azure.CosmosDB.Table;   // replaces Microsoft.WindowsAzure.Storage.Table
using Microsoft.Azure.Storage;          // replaces Microsoft.WindowsAzure.Storage

答案 1 :(得分:0)

这些是.NET Framework库:

using Microsoft.WindowsAzure.Storage; //legacy
using Microsoft.Azure.CosmosDB.Table;

使用此.NET Core库:

using Microsoft.Azure.Cosmos.Table;