Подтвердить что ты не робот

Стандартные классы данных бизнес-логики для .NET.

Существует множество "примитивных" типов таблиц котлов классов данных, которые могут появляться во многих разных программах.

Однако я никогда не видел набор классов или библиотек, который признает необходимость комбинировать все эти вещи с общей логикой, необходимой для них, например, для проверки.

Примеры классов ([] скобки соответствуют классам также в гипотетической библиотеке):

Адрес (улица, почтовый индекс, город, штат/территория/провинция, страна)
Лицо (имя, контактная информация ([Телефон]/[Электронная почта]/etc), [Адрес], SSN/TIN, [CreditCard])
Телефон (номер, код страны и т.д.)
CreditCard (тип, номер, срок действия, ccv) **

И я уверен, что кто-то может придумать много других.

Я разработал свои собственные классы Phone/Address/Person/CreditCard, которые я использую в проектах, в комплекте с проверкой и логикой.

Однако я только могу проверить достоверность информации на США. Мой класс номера телефона идеально наследуется от базового класса Phone, так как мой фактически разделяет число на NPA, NXX и Station и полностью проверяет его со стандартами NANP.

Существует ли в сети набор библиотек, в котором имеется полная коллекция таких классов данных таблиц котлов с правильной проверкой?

Включает ли это проверку для всемирного набора данных или только данные из США?

А для ** из CreditCard он способен соответствовать стандартам безопасности данных PCI?

Я знаю, что это классы, многие из которых, вероятно, много раз писали на разных языках, но есть ли какая-либо библиотека .NET, которая удовлетворяет эти желания?

Я бы предпочел открыть источник/бесплатно, хотя я бы рассмотрел платный набор сторонних библиотек.

4b9b3361

Ответ 1

CSLA.NET может предложить близкое к тому, что ищет yoju're. Вероятно, это немного больше, чем то, что вы просите, но в нем есть наиболее полная документация по любой структуре (т.е. опубликованные книги из APress). Это также бесплатно.

В частности, пространство имен CSLA.ValidationRules и классы CommonRules и CustomRules фокусируются на проверке данных.

Ответ 2

Возможно, было бы удобно иметь схему для типичных реализаций различных объектов при запуске проекта, однако конкретные реализации были бы конкретными, требующими конкретных действий и требований проверки. Вероятно, поэтому для создания сред ORM или бизнес-объектов требуется создание схемы ввода для создания классов.

Если бы существовала стандартная кластерная структура, то это было бы открытым исходным кодом, вы бы обнаружили, что эта схема будет массивной и постоянно растет, это затруднит обновление приложения. Каждый класс и свойство этого класса потребует много документации, с помощью которых они могут быть использованы и т.д., Но это может быть субъективным. Схема, в которой можно было бы выбрать то, что они хотят и как она должна быть проверена, должна использоваться в структуре генерации ORM/бизнес-объектов, может быть хорошей идеей, и я уверен, что они в настоящее время не существуют.

Вы могли бы взглянуть на конкретные существующие проекты с открытым исходным кодом с аналогичной функциональностью и использовать их для вдохновения?