Невозможно использовать новые ConnectionStrings, созданные с помощью Entity Builder - PullRequest
1 голос
/ 12 июня 2019

В моем файле app.config у меня есть эта connctionString по умолчанию с именем DBEntities1, которая имеет доступ только для чтения (из-за идентификатора пользователя: appUser ) в базе данных:

<connectionStrings>
    <add name="DBEntities1" connectionString="metadata=res://*/DBModel1.csdl|res://*/DBModel1.ssdl|res://*/DBModel1.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=localhost;user id=appUser;password=pass;database=db&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

но в моей программе я попытался изменить идентификатор пользователя и пароль , изменив и повторно использовав одну и ту же строку подключения, чтобы получить полный доступ к базе данных, например:

ConnectionStringSettings settings = ConfigurationManager.ConnectionStrings["DBEntities1"];
EntityConnectionStringBuilder entityBuilder = new EntityConnectionStringBuilder(settings.ToString());
SqlConnectionStringBuilder sqlBuilder = new SqlConnectionStringBuilder(entityBuilder.ProviderConnectionString);

sqlBuilder.UserID = "sosso";
sqlBuilder.Password = "password";
entityBuilder.ProviderConnectionString = sqlBuilder.ToString();
String newConnectioStrings = entityBuilder.ToString();

using(EntityConnection connection = new EntityConnection(newConnectionStrings))
{
        connection.Open();

        DBEntities1 context = new DBEntities1();
        client c = new client();

        c.table_client = 1;
        c.idClient = 0;

        context.client.Add(c);
        context.SaveChanges();
        connection.Close();
}

но похоже, что программа все еще использует старые строки подключения со старым идентификатором пользователя и возвращает ошибку в контексте. SaveChanges ();Метод изречения:

MySqlException: команда INSERT запрещена для пользователя: 'appUser' @ '@ localhost' в таблице 'client'.

ПОЖАЛУЙСТА как я могу заставить программу использовать новые строки подключения ??????

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...