如何更新 startup.cs 中的服务顶部使用 ITableEntity 和 TableClient 作为 dotnet3.1 中的服务
Posted
技术标签:
【中文标题】如何更新 startup.cs 中的服务顶部使用 ITableEntity 和 TableClient 作为 dotnet3.1 中的服务【英文标题】:How do i update a service in startup.cs top use ITableEntity and TableClient as service in dotnet3.1 【发布时间】:2021-12-24 15:34:51 【问题描述】:我正在将一个 dotnet 项目从 2.2 更新到 3.1,并且必须更换旧的
services.AddSingleton<ITableStorage>(new AzureTableStorage(Configuration.GetSection("AzureTables:StorageConnectionString").Value));
使用
using Wolnik.Azure.TableStorage.Repository;
改为使用Azure.Data.Tables
,如何更改服务以使用 ITableEntity 和表客户端?我没有找到任何好的资源。
问题是我不想使用AzureTableStorage,而是使用TableClient,但是我不知道如何在startup.cs文件中实现它,AzureTableStorage的创建方式。
【问题讨论】:
不确定是否了解您的需求。您想让服务使用来自Azure.Data.Tables
的ITableEntity
吗?然后只需将using Wolnik.Azure.TableStorage.Repository
更改为using Azure.Data.Tables
。否则请多解释一下。
【参考方案1】:
TableClient 类包含一个名为 Query 的方法,它允许您从表中选择行。
该方法还采用ITableEntity 类型的泛型参数,指定模型类数据将作为返回。
TableClient 对象是用于与 Cosmos DB 表 API 通信的对象。
在应用程序的Startup.cs
文件中,编辑ConfigureServices()
var connectionString = Configuration.GetConnectionString ("CosmosTableApi");
services.AddSingleton<TableClient>(new TableClient(connectionString, "WeatherData"));
services.AddSingleton<TablesService>();
更多详情请参考Configure the Table client in Startup.cs和SO。
【讨论】:
非常感谢您的帮助! @Christine Garcia- 如果我的回答对您有帮助,您可以接受它作为答案(单击答案旁边的复选标记将其从灰色切换为已填充。)。这对其他社区成员可能是有益的。谢谢以上是关于如何更新 startup.cs 中的服务顶部使用 ITableEntity 和 TableClient 作为 dotnet3.1 中的服务的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Startup.cs 的 InjectsAuthElements 方法中的配置中获取连接字符串
如何在 .NET 5 隔离进程中使用 Azure Functions v3 时添加以前在 Startup.cs 中的代码->配置方法
Blazor Server App MVVM-Pattern:通过 Startup.cs 中的服务类从 App-State 的子组件更改中获取父级通知