2016-10-20 3 views
1

Я разработал новое приложение .Net с помощью Visual Studio на моей локальной машине. Я создал экземпляр Google Cloud SQL для хранения базы данных. Я пытаюсь создать первую базу данных Entity Framework на сервере, и у меня возникают проблемы с подключением.Не удается подключиться к GCloud SQL

Я слежу за предоставленным руководством Google (как это ужасно), и я застреваю при настройке строки подключения в файле Web.config. Руководство пользователя: https://cloud.google.com/dotnet/getting-started/using-cloud-sql

Я уже добавил свой IP к принятым соединениям на стороне облака SQL. ТОЛЬКО изменения, внесенные мной в файл по умолчанию Web.config:

1) Комментарий из существующей строки подключения. 2) Заменено:

<add name="CCGamesGCloud.EntityFramework.Context" connectionString="Data Source=tcp:###.###.##.###;Initial Catalog=CCG-GamesDB;User ID=####;Password=########" 
    providerName="System.Data.SqlClient" /> 

вышеизложенного использует й правильный IP и регистрационную информацию вместо ****, имя является расположением контекста DB

мне не хватает конкретное AppSettings конфигурации ключа /значения?

Попытка взглянуть на соединение в проводнике сервера дает следующую ошибку. http://imgur.com/a/6DyYv

Может кто-нибудь указать мне в правильном направлении? Я работаю в поисковых блогах в течение последнего часа, но google, похоже, любит давать свой собственный глупый путеводитель в качестве лучших результатов для каждого поиска, который я делаю.

класс Контекст:

public class Context : DbContext 
{ 
    public Context() : base("CCGamesGCloud.EntityFramework.Context") 
    { 

    } 

    public virtual DbSet<Developer> Developers { get; set; } 
    //... etc. etc... for all DBSets 

    protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
     base.OnModelCreating(modelBuilder); 

     modelBuilder.Entity<Developer>(); 
     // other calls... etc here 
    } 
} 

ответ

1

мне нужно использовать собственный синтаксис Google для связи, а не по умолчанию или синтаксиса MySQL. Следующая строка подключения работала. Надеюсь, это поможет кому-то.

<add name="YOUR_NAME_HERE" connectionString="Server=***.***.**.***;Database=YOUR_DATABASE_NAME;Uid=YOUR_USERNAME;Pwd=YOUR_USER_PASSWORD" providerName="MySql.Data.MySqlClient" /> 
+0

Ниже ссылка для вывода дополнительной помощи любых основанного MySQL ссылок: http://stackoverflow.com/questions/20277677/dynamic-mysql-database-connection-for-entity-framework-6/20294903#20294903 – Chris

Смежные вопросы