Единица менеджеров по работе/репозиторию для NHibernate?

Какое поведение вы ожидаете, если в вашем списке есть несколько «апельсинов»? Я считаю, чтобы игнорировать все элементы удвоения.

Функция должна остановить проверку, как только найдет какой-либо элемент из списка проверки.

def check_if_there_something_else(original_list: list, checking_for: list):
    for fruit in original_list:
        if fruit not in checking_for:
            return True
    return False

original_list = ['oranges', 'oranges', 'grapes']
checking_for = ['oranges', 'grapes']
print(check_if_there_something_else(original_list, checking_for))

False

original_list = ['oranges', 'oranges', 'grapes', 'grapes', 'grapes', 'kiwi']
checking_for = ['oranges', 'grapes']
print(check_if_there_something_else(original_list, checking_for))

True

Вы можете сделать почти такую ​​же проверку, найдя разницу между наборами, но создание двух новых объектов выглядит избыточно:

print(any(set(original_list).difference(checking_for)))

Правда

7
задан Mike 27 September 2010 в 17:22
поделиться

2 ответа

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

. примеры проектов, здесь - один для Берроу. Я использую Burrow для проекта прямо сейчас, и он прекрасно работает для меня. Хотя я ими не пользуюсь, существуют классы репозитория, которые используют единицу управления рабочим сеансом, поэтому с ней действительно легко начать работу. Я также использую Fluent NHibernate, и легко заставить все работать вместе.

11
ответ дан 6 December 2019 в 15:31
поделиться

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

Да, NHibernate может быть довольно многословным. Я исследовал «шаблоны» как «Единица работы», так и «Репозиторий» (на самом деле они «фасады», но это уже другая история) и написал очень простые их реализации. Оба они значительно упрощают NHibernate, но я бы предложил использовать реализацию Unit of Work, поскольку я считаю, что в целом она более производительна и проще в использовании, чем Repository. Загрузите его и попробуйте:

http://code.google.com/p/nhibernate-unitofwork-example/

1
ответ дан 6 December 2019 в 15:31
поделиться
Другие вопросы по тегам:

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