Ответ 1
Разрывы строк должны сохраняться в db. Когда вы возвращаете информацию и отображаете ее как Html, просто замените разрыв строки (т.е. Environment.NewLine) тегом разрыва строки (т.е. < b r / >
)
Каков способ разделения строк и пробелов в текстовом поле MultiLine или HTML Text при вставке базы данных (Asp.Net). Например, что мне делать, если я хочу вставить
Привет
Мир
в базу данных с разрывами строк? А также Показывая, что мне делать? Я не хочу использовать редактор для этого.
Но проблема в том, как разделить разрыв строки и пространство. Теперь, когда я вставляю
Hello
Мир
или hello world, он сохраняется с тем же символом в базе данных. Поэтому я не могу их разделить, и я показываю мир привет, хотя пользователь использует разрывы строк, такие как выше. Значение, которое поступает из области TextBox или html, такое же, как при разрыве строки или пробеле.
Разрывы строк должны сохраняться в db. Когда вы возвращаете информацию и отображаете ее как Html, просто замените разрыв строки (т.е. Environment.NewLine) тегом разрыва строки (т.е. < b r / >
)
< br />
не работал у меня. (при назначении текста html textarea)
\r\n
сделал.
Несколько вариантов:
& Бык; Преобразуйте символы перевода строки в <br/>
.
& Бык; Поместите текст в блок <pre>
.
& Бык; Поместите каждую строку в свой собственный блок <div>
.
Помните, что все пробелы (SP, HT, LF, CR) игнорируются в HTML (большую часть времени).
То, что вы храните в своей базе данных, должно быть чистым символом. Преобразование его в правильный HTML для отображения требует замены определенных символов на последовательности HTML.
Вы можете использовать & # 10;
Используя Razor (MVC3), чтобы отобразить или сохранить разрывы строк, извлеченные из моего db, выполните следующие действия:
@Html.Raw(text_to_display.Replace(Environment.NewLine, "<br/>"))
Я всегда храню пользовательский ввод, как он есть, но при отображении его снова вы всегда должны быть очень осторожны. Разрывы строк - это просто случай замены System.Environment.Newline на "< br/ > ". Не уверен, что лучшая практика для сохранения другого белого пространства при визуализации как html, было бы интересно узнать, что делают другие люди.
Сохранение пробела после рендеринга в HTML легче всего сделать путем преобразования его в объект HTML
.
Вам нужно заменить все экземпляры vbcrlf (environment.newline) тегом html [< b r > ]
И чтобы разрешить несколько пробелов, вам нужно заменить пространство на [& n b s p;]
Это преобразует ваш простой тест в html "достаточно", чтобы его можно было рассматривать как html (работает для меня на введенных текстовых разделах моего веб-сайта).
Из моих тегов это только текст между [] и удаление пробелов... размещение текста тега на странице заставило его отображаться как html!!!!
Единственное предложение, которое было для меня выше, было: <& # 1 0 ;>
Я использую текстовое поле, сгенерированное Front page, которое теперь выполняется на сервере Linux.
Несколько применений строки не будут создавать несколько разрывов строк, но одна запись строки в новой строке обеспечивает двойной разрыв строки, подходящий для нового абзаца.
Прежде чем переносить мою страницу с сервера с помощью ОС Windows, я смог выполнить Line Breaks двойным нажатием "Enters."