Еще один вопрос переноса слов - PullRequest
1 голос
/ 08 июля 2011

Я искал решение в течение последних двух дней.Я работаю с asp.net, и определенный текст из формы сохраняется в базе данных.При извлечении текста из базы данных я хочу отобразить его в виде div или метки или чего-то еще, что действительно не имеет значения, но я хочу распознать сохраненные разрывы строк и обернуть текст в углу.Я думал, что у меня это было, когда я делал перенос слов: break-word;и пробел: предварительно;но потом я понял, что слова разбиты на две части, переходя от одной строки к другой.

Я знаю, что это можно решить с помощью JavaScript.Есть ли способ, которым я могу сделать это без использования JavaScript или JQuery?Любая помощь будет принята с благодарностью!

1 Ответ

2 голосов
/ 08 июля 2011

Вы можете написать помощника для этого:

public static class HtmlExtensions
{
    public static IHtmlString FormatText(this HtmlHelper html, string text)
    {
        if (string.IsNullOrEmpty(text))
        {
            return MvcHtmlString.Empty;
        }

        // you could use any line break you might have in your text to split
        var lines = text.Split(new[] { Environment.NewLine }, StringSplitOptions.None);
        return MvcHtmlString.Create(
            string.Join("<br/>", lines.Select(line => html.Encode(line)))
        );
    }
}

, а затем:

<div>
    @Html.FormatText(Model.SomeText)
</div>
...