169 похожих чатов

Как можно реализовать следующий Шарп код в котлине? person.RuleFor(x => x.Name).Length(5,

10);


Чтоб если длина строки Name не входила в указанный диапазон, то выдавалась ошибка "Name length should be in 5..10"

11 ответов

8 просмотров

есть библиотеки различные, которые наверное позволят валидировать именно в таком стиле, но с помощью стандартных средств это будет выглядеть так: require(name.length in 5..10) { "Name length should be in 5..10" }

с этой либой что я скинул можно так делать validate(person) { validate(Person::name).hasSize(min = 5, max = 10) }

Aλex Sokol
с этой либой что я скинул можно так делать valida...

Вот тут я не совсем понял, что мешает использовать условно require(person.name.length in 5 .. 10) или там еще выводы красивые какие?

А вам не кажется, что это какой-то птичий язык, если можно писать check(person.name.length in 5..10) { "Incorrect length" }?

Iaroslav Postovalov
А вам не кажется, что это какой-то птичий язык, ес...

Если это правило не на месте обрабатывается, а напирмер куда-то передается, то это полезная вещь. Но определенно не в стдлибе

Alexander Nozik
Если это правило не на месте обрабатывается, а нап...

Да никто про стдлибу не говорит. Просто мне кажется, что вот эти библиотеки с рантаймовыми контрактами - оверкилл.

Iaroslav Postovalov
Да никто про стдлибу не говорит. Просто мне кажетс...

Ну ты просто не делал систем со сложной валидацией. Полезная вещь, когда тебе надо комбинировать валидаторы. Но специфическое применение.

Yevhen-Kazmin Автор вопроса
Iaroslav Postovalov
А вам не кажется, что это какой-то птичий язык, ес...

Чтоб было проще понять чего я хочу, можно посмотреть https://fluentvalidation.net/

Похожие вопросы

Обсуждают сегодня

type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
А чем вам питонисты не угодили?😂
.
79
Можно ли загрузить скрипт py в бота чтобы он работал по нему? как это сделать?
huskadam #RCC Фанат? @hitlerpvp
13
Всем здравствуйте! Я хотел узнать сколько стоит средняя месячная зарплата у Electron js разработчиков? Мне очень это важно и нужно, плиз помогите узнать эту инфу! Для Джунио...
U.K.
10
А дин типизация это хорошо или плохо?
Alexey
12
Исходники плюс документация? Вы гоните)) демок хватит всем
zamtmn
11
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
77
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Hello. Could you please help me with finding all coordinates within a radius using a spatial index, given that I have a table with coordinates? SET @lng = 37.57925; SET @lat ...
Rinchin G
7
Карта сайта