Используйте Google Cloud API в C#

Я пытался запросить базы данных из Google Cloud SQL в C#. Тем не менее, я не могу заставить его работать.

Я проследовал за страницами Google Reference https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/databases/get и попытался сделать простую вещь, например сначала получить список баз данных.

и в моем .csproj файл, я импортировал несколько API.

 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.0</TargetFramework>
   </PropertyGroup>
   <ItemGroup>
     <PackageReference Include="Google.Apis.Auth"/>
     <PackageReference Include="Google.Apis.SQLAdmin.v1beta4"/>
     <PackageReference Include="Google.Apis"/>
     <PackageReference Include='Google.Cloud.Iam.V1' version="1.0.0-beta12" />
     <PackageReference Include="Google.Apis.Core" version="1.28.0" />
   </ItemGroup>
</Project>

Кроме того, я сослался на репозиторий Github и нашел примеры с использованием BigQuery, PubSub и т. Д., Но без Cloud SQL. https://github.com/GoogleCloudPlatform/dotnet-docs-samples

Может кто-нибудь дать какой-нибудь совет или указать мне правильное направление?

Огромное спасибо.

2 ответа

Решение

Импортированные вами API необходимы, если вы хотите создавать или изменять экземпляры Cloud SQL из своего кода, однако они не нужны для запроса экземпляра.

Если ваша цель - запросить экземпляр, который вы создали, с помощью облачной консоли или команды gcloud, вам следует подключиться к нему, как и к любой другой базе данных MySQL. Документация для MySQL Connector/Net находится здесь, и есть также вопрос SO об этом. Вам также необходимо авторизовать IP-адрес, с которого вы подключаетесь.

Дэвид прав. Вот несколько примеров, которые показывают, как подключиться к базе данных SQL из C#:

Ядро dotnet https://cloud.google.com/appengine/docs/flexible/dotnet/using-cloud-sql flex/dotnet/using-cloud-sql

dotnet 4.x https://cloud.google.com/dotnet/docs/getting-started/using-cloud-sql