Будет ли объявление статической строки, содержащее вызовы Regex.Replace() и/или String.Format(), оптимизировано во времяC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Будет ли объявление статической строки, содержащее вызовы Regex.Replace() и/или String.Format(), оптимизировано во время

Сообщение Anonymous »

Согласно статье «Как объединить несколько строк (Руководство по программированию на C#)» строковые литералы и строковые константы будут объединены в одну строку во время компиляции. Далее говорится, что строковые переменные могут быть объединены только во время выполнения.

У меня есть только строковые литералы и константы перечисляемых значений, но у меня есть немного более сложный сценарий, в котором эти комбинируются с двумя вызовами статических методов. Для удобства чтения и удобства я объявляю статическую строку, содержащую SQL, как показано в примере ниже:

Код: Выделить всё

private enum StatGroup
{
Test,
...
}

private static string TestSql =
Regex.Replace(
String.Format(
@"INSERT INTO StatCounts (StatGroup, LinkStatus, LinkCount)
SELECT   '{0}', LinkStatus, COUNT(*)
FROM     LinkInfo
GROUP BY LinkStatus",
StatGroup.Test),
@"\s+", " ", RegexOptions.Multiline),
Я использую String.Format(), чтобы можно было использовать перечисление для вставки допустимых значений значений в столбец таблицы StatGroup. Я использую Regex для удаления ненужных пробелов в сценарии SQL. Пробелы не требуются во время выполнения, но хорошо служат для удобства чтения кода.

Достаточно ли умен компилятор, чтобы оптимизировать вышеизложенное во время компиляции?

Подробнее здесь: https://stackoverflow.com/questions/607 ... nd-or-stri
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»