我正在尝试在本地配置数据存储模拟器(在Windows上运行)进行开发和测试,以便在云中更新索引需要很多时间。我将逐步浏览本指南:
- gcloud beta模拟器数据存储
- 应该配置环境变量:只需按行手动编写设置变量
- 尝试访问localhost:8081-返回 ok
- 尝试访问本地主机:8081/datastore-返回找不到
- 在本地重新启动应用程序,并尝试在数据存储上尝试一些操作:所有更改均在云上应用,而不是本地...
我遵循了相同的步骤,但是除非我为DataStore的Create Call提供了明确的说明,否则无法正常工作。
您需要区分您的代码是否在GCP与本地运行。
如果您在本地环境中,则需要如下创建DataStRoodB。
DatastoreDb db = DatastoreDb.Create(projectId, string.Empty, new DatastoreClientImpl(
new Datastore.DatastoreClient(
new Channel("localhost", 8081, ChannelCredentials.Insecure)), new DatastoreSettings()));
我仍在探索您是否可以在不专门针对Local主持的情况下进行
您可以使用DataStoredBbuilder强迫数据存储器连接到模拟器:
private DatastoreDb _datastoreDb = new DatastoreDbBuilder
{
EmulatorDetection = EmulatorDetection.EmulatorOnly
}.Build();