Обрабатывать обратную косую черту в строке подключения

#c# #.net #sql-server

#c# #.net #sql-сервер

Вопрос:

У меня есть следующая строка подключения в app.config

 <add name="myDBConnectionString"
     connectionString="Data Source=ASDFGSQLEXPRESS;
         Initial Catalog=ZAQ;
         Integrated Security=True;"/>
  

в моем коде C # затем, когда я получаю эту строку, DB всегда оценивается как "ASDFG\SQLEXPRESS"

Я не смог поставить @, поскольку app.config это не нравится. Кроме того, если я скажу

 ASDFG\SQLEXPRESS 
  

он оценивается как

 ASDFG\\SQLEXPRESS 
  

и не открывать соединение.

Спасибо,

Комментарии:

1. У меня никогда не было этой проблемы. Как вы извлекаете и используете строку подключения? Не существует концепции экранирования с помощью "" в app.config настройках конфигурации.

2. Это не ASDFGSQLEXPRESS то, что вы хотите? Не могу понять in my C# code then, when I get this string DB is always evaluated as "ASDFGSQLEXPRESS" строку

3. «ASDFG SQLEXPRESS» выглядит правильно. Есть ли у вас type-o в вашем вопросе?

4. @manojlds, @WEFX: Я исправил сообщение OP. По-видимому, так редактор превращается "\" в "" , когда записывается как текст в двойных кавычках. лол, какая ирония.

5. Есть ли здесь реальная проблема? Например, вы можете подключиться к базе данных или нет? Если нет, то возникает ли исключение?

Ответ №1:

Отладчик может отображать ее как ASDFG\SQLEXPRESS , но это просто экранирование обратной косой черты для целей отображения.

Комментарии:

1. Привет, это безумие, но я использовал команду SQLite для подключения к базе данных SQL Server 🙁 … большое спасибо за вашу помощь.

Ответ №2:

используйте это в codebehind

 string conString =
    System.Configuration.ConfigurationManager
        .ConnectionStrings["myDBConnectionString"].ToString();
  

Комментарии:

1. Привет, это безумие, но я использовал команду SQLite для подключения к базе данных SQL Server 🙁 … большое спасибо за вашу помощь.

Ответ №3:

всегда вычисляется как «ASDFG SQLEXPRESS»

Что вполне правильно. Какие-либо реальные проблемы при открытии базы данных?

Комментарии:

1. это безумие, но я использовал команду SQLite для подключения к базе данных SQL Server 🙁 … большое спасибо за вашу помощь.