Пользовательская дополнительная информация в документации API
Я прочитал здесь о дополнительной информации о странице справки веб-API. Аннотация данных фактически предоставляет дополнительную информацию для документации. Но я хочу знать, что в любом случае можно предоставить дополнительную информацию без аннотаций данных?
Если да, то как?
Если нет, то есть ли возможность переопределить дополнительную информацию аннотациями данных, например,
[Required]
показывает Обязательно написано в дополнительной информации, но что если я хочу показать "Это поле обязательно для заполнения" или что-то в этом роде?
Спасибо
РЕДАКТИРОВАТЬ см. На рисунке. Я хочу обновить эту дополнительную информацию без аннотации данных, если это возможно.
3 ответа
Если вы хотите предоставить пользовательскую дополнительную информацию (используя аннотацию данных), то ответ @Pedro G. Dias - ваше решение, но если вы хотите предоставить дополнительную информацию без аннотации данных, то я боюсь, что это невозможно, ИЛИ вам придется использовать некоторые альтернативная процедура для этого, как прокомментировал @DynamicVariable по вашему вопросу.
PS. Я отладил проект документации для проверки и обнаружил, что дополнительная информация фактически предоставляется аннотациями данных.
Таким образом, аннотация позволяет дополнительно указать требования, т. Е. Если у вас есть следующая модель:
public class MyModel {
[Required(ErrorMessage = "You seriously need a name here bro")]
public string Name{ get; set; }
}
Затем вы можете автоматически отобразить сообщение проверки на вашей странице ASP.Net следующим образом:
@model string
@Html.TextBoxFor(m => m)
@Html.ValidationMessageFor(model => model, "", new { @class = "text-danger"})
Таким образом, в основном, вы добавляете поле для сообщения проверки, которое будет заполнено ASP.Net при появлении атрибута Required.
Вы можете редактировать Required Attribute
в ModelDescriptionGenerator.cs
Areas>HelpPage>ModelDescriptions>ModelDescriptionGenerator.cs
Например:
[Required(ErrorMessage ="Must pass")]
public string Name { get; set; }
Я получил: Дополнительная информация: должен пройти
заменить:
{ typeof(RequiredAttribute), a => "Required" }
с:
{ typeof(RequiredAttribute), a => {
RequiredAttribute b =(RequiredAttribute)a;
return (b.ErrorMessage);
}