2016-03-07 2 views
1

enter image description hereпользовательских дополнительная информация в документации API

Я прочитал here о дополнительной информации справочной странице веб-API. Аннотации данных фактически предоставляют дополнительную информацию для документации. Но я хочу знать, что все равно предоставить дополнительную информацию без аннотаций к данным?

Если да, то как?

Если нет, то есть в любом случае, чтобы отменить дополнительную информацию с аннотациями данных для экземпляра

[Required] 

шоу Необходимого написано в дополнительной информации, но что, если я хочу, чтобы показать «Это поле обязательно» или что-то вроде что?

Благодаря

EDIT увидеть в картине я хочу, чтобы обновить эту дополнительную информацию без аннотирования данных, если это возможно.

+0

Я думаю, вы ищете альтернативу аннотации данных. Затем вы должны использовать Fluent API, https://msdn.microsoft.com/en-in/data/jj591617.aspx. –

ответ

1

Если вы хотите, чтобы пользовательские дополнительную информацию (с помощью аннотаций данных), то ответ @Pedro Г. Dias является ваше решение, но если вы хотите, чтобы дать дополнительную информацию без использования аннотаций данных, то я боюсь, что это невозможно. Или вы должны использовать какую-то альтернативную процедуру для этого, как прокомментировал @DynamicVariable по вашему вопросу.

PS. Я отлаживал проект документации для проверки, и я обнаружил, что дополнительная информация фактически предоставляется аннотациями данных.

3

Так аннотации позволяют дополнительно указать требования, то есть если у вас есть следующие модели:

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 когда Обязательный атрибут пинки в.

+0

хорошо, что дает ответ для переопределения сообщения ... есть все равно для этого без аннотации данных? –

+0

Да, вы можете использовать ModelState.AddModelError() в своем коде и избегать аннотации данных - не забудьте пометить ответ, если он решил вашу проблему :) –

+0

исправьте меня, если я ошибаюсь .... им спрашивают о справочной документации Api Я думаю, что это для простого просмотра, и мне это не нужно –

2

Вы можете редактировать 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); 
     } 

see

+0

, что означает, что мне все еще нужно использовать аннотацию данных ???? –

+0

Да. :(Но вы можете редактировать ** parameters.cshtml ** И редактировать сообщение . 'foreach (примечание var в параметре. Аннотации) {

@ annotation.Documentation

}' – Shir

Смежные вопросы