C # многострочная строка с HTML - PullRequest
10 голосов
/ 28 февраля 2011

Возможно ли иметь многострочную строку C #, содержащую html?

отлично работает следующее:

        string output = @"Qiuck 
                        brown
                        fox
                        jumps
                        over
                        the
                        lazy 
                        log";

Но это не работает:

            string output = @"<object>
                        <node>
                        <param value=\"test\" />
                        </node>
                        </object>
                        ";

Однако этот похожий пример работает, я только что вынул атрибут param:

            string output = @"<object>
                        <node>
                        <param />
                        </node>
                        </object>
                        ";

Какие-нибудь предложения по наилучшему способу упаковки html в строковую переменную? Если это невозможно, я предполагаю, что следующий лучший метод - это просто чтение из файла? Есть еще идеи?

Кажется, проблема с примером 2 заключается в экранированных кавычках.

Ответы [ 3 ]

33 голосов
/ 28 февраля 2011

Используйте двойные кавычки вместо экранирования.

    string output = @"<object>
                    <node>
                    <param value=""test"" />
                    </node>
                    </object>
                    ";
7 голосов
/ 28 февраля 2011

Используйте "" вместо \". Он по-прежнему будет выводить ". Когда вы создаете буквенные строки, escape-символ не обрабатывается:

string output = @"<object>
                      <node>
                          <param value=""test"" />
                      </node>
                  </object>
                  ";
2 голосов
/ 28 февраля 2011

Используйте одинарные кавычки в параметре.

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