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

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

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

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

Адрес (улица, индекс, город, состояние/территория/область, страна)
Человек (имя, контактная информация ([Телефон] / [электронная почта] / и т.д.), [Адрес], SSN/TIN, [Кредитная карта])
Телефон (число, код страны, и т.д.)
CreditCard (тип, число, истечение, ccv) **

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

Я разработал свои собственные классы Телефона/Адреса/Человека/Кредитной карты, которые я использую в проектах, вместе с проверкой и логикой.

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

Есть ли ряд библиотек там в сети, которая имеет всесторонний набор таких шаблонных классов данных с надлежащей проверкой?

Это включает проверку для всемирного набора данных или просто американских данных?

И для ** от CreditCard, действительно ли это способно к встречающимся Стандартам по защите данных PCI?

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

Я предпочел бы, открывается, получают/освобождают, хотя я рассмотрел бы заплаченный сторонний набор библиотеки.

13
задан Brett Allen 28 January 2010 в 04:40
поделиться

2 ответа

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

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

6
ответ дан 2 December 2019 в 01:49
поделиться

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

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

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

.
1
ответ дан 2 December 2019 в 01:49
поделиться
Другие вопросы по тегам:

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