Как проверить параметры, поступающие в тело запросаC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как проверить параметры, поступающие в тело запроса

Сообщение Anonymous »


Я работаю над API для своего задания в колледже, где мне и двум моим друзьям нужно создать довольно сложное приложение. Я знаю, что есть много вещей, которые можно сделать лучше, но речь не об этом. У меня есть следующий код для регистрации нового пользователя:

app.MapPost("/register", async (RegistrationInput inp, ThreeMoronsContext db) => { вар HashingResult = PasswordMegaHasher.HashPass(inp.password); пытаться { Пользователь UserToRegister = новый() { Идентификатор = Guid.NewGuid(), Логин = inp.login, Пароль = HashingResult.hashpass, Соль = ХэшингРезультат.salt.ToString(), Имя = входное имя, Фамилия = инп.фамилия, Отчество = вв.отчество, UserClassId = inp.UserClassId }; ждут db.Users.AddAsync(UserToRegister); //ждем db.SaveChangesAsync(); вернуть Результаты.ОК(UserToRegister); } улов (исключение) { return TypedResults.BadRequest(exc.Message); } }); ThreeMoronsContext — это DbContext, полученный из EntityFrameworkCore. Регистрационный вход:

общедоступная запись RegistrationInput (строка логина, строка пароля, строковое имя, строковая фамилия, строковое отчество, int UserClassId) Я хочу применить некоторую проверку к RegistrationInput, чтобы, например, длина логина составляла от 5 до 20 символов, имя содержало только кириллические буквы и так далее. Я пробовал применить [StringLength] и [RegularExpression], но мне кажется, что я совершенно не понял назначение таких атрибутов, поскольку когда я пробовал, например, этот ввод:

"логин": "s", "пароль": "hashme123", "имя": "123", "фамилия": "с", "отчество": "сс", «ИдКлассаПользователя»: 1 Я получил ответ 200 о создании нового пользователя:

{ "id": "caf3796e-ba8d-4583-8c43-e69020a03353", "имя": "123", "фамилия": "с", "отчество": "сс", "логин": "с", "пароль": "q6anLJxltC2Wf7443xRjwbOxCLZ5SXT9LdtSDOVceRk=", «userClassId»: 1, "группы": [], «userClass»: ноль, "salt": "System.Byte[]" } Что мне следует сделать, чтобы применить проверку к данным, поступающим из тела запроса?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Случайные данные, поступающие из запроса конечной точки
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Случайные данные, поступающие из запроса конечной точки
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Случайные данные, поступающие из запроса конечной точки
    Anonymous » » в форуме Python
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Пользовательский OncePerrequestFilter читает пустое тело запроса - почему тело уже потребляется?
    Anonymous » » в форуме JAVA
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Как объединить параметры строки запроса по умолчанию и параметры, специфичные для запроса, с помощью Guzzle?
    Anonymous » » в форуме Php
    0 Ответы
    120 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»