Стандартные помощники тегов ASP.Net Core не фиолетовые и жирные - PullRequest
0 голосов
/ 29 августа 2018

У меня есть этот файл cshtml, и он не выделяет помощников тегов Asp.Net Core, таких как <form>, <input>, <span>, <textarea>. Я частично смог обойти эту проблему с помощью @ Html.DisplayFor, и это сработало. Но в остальном я понятия не имею, что с этим не так. Моя версия Visual Studio 2017 15.8.2, и те же самые помощники тегов являются фиолетовыми и жирными в другом проекте.

Вот код (cshtml):

<form method="post">
    <div asp-validation-summary="All" class="text-danger"></div>
    <table>
        <tr>
        <td>@Html.DisplayNameFor(model => model.NoteModel.NoteName)</td>
        <td><input asp-for="NoteModel.NoteName" class="form-control" data-val-required="The NoteName field is required." data-val-maxlength-max="15" data-val="true" /></td>
        <td><span asp-validation-for="NoteModel.NoteName" class="text-danger"></span></td>
        </tr>
        <tr>
        <td>@Html.DisplayNameFor(model => model.NoteModel.TranslatedNoteName)</td>
        <td><input asp-for="NoteModel.TranslatedNoteName" class="form-control" data-val-required="The TranslatedNoteName field is required." data-val-maxlength-max="100" data-val="true" /></td>
        <td><span asp-validation-for="NoteModel.TranslatedNoteName" class="text-danger"></span></td>
        </tr>
        <tr>
        <td>@Html.DisplayNameFor(model => model.NoteModel.NoteText)</td>
        <td><textarea asp-for="NoteModel.NoteText"
                  class="form-control" data-val-required="The NoteText field is required." 
                  data-val-maxlength-max="8000" data-val="true" 
                  data-val-maxlength="The field NoteText must be a string or array type with a maximum length of '8000'."
                  rows="20" cols="100"></textarea></td>
        <td><span asp-validation-for="NoteModel.NoteText" class="text-danger"></span></td>
        </tr>
    </table>

    <div>
        Upload an image: <input type="file" name="image" accept=".jpg" />
    </div>

    <div class="form-group">
        <button type="submit" class="btn btn-default">Upload</button>
    </div>
</form>

В классе NoteModel есть аннотации данных, и @ Html.DisplayFor правильно их отображает.

Есть идеи? Заранее спасибо.

UPDATE

Теги неправильно отображаются в HTML, все атрибуты asp- остаются в HTML. Видимо, я делаю какую-то глупую ошибку, которую не могу понять.

1 Ответ

0 голосов
/ 30 августа 2018

Помощники тегов являются опциональной функцией. Они не доступны на странице по умолчанию. Они активируются путем добавления директивы @addTagHelper на страницу или, как правило, в файл _ViewImports.cshtml :

@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

Проверьте, включены ли метки-подсказки.

Ссылка: https://www.learnrazorpages.com/razor-pages/tag-helpers/

...