Связь «один ко многим» с PetaPoco DNN7 DAL2

Я разрабатываю модуль и понимаю PetaPoco с отдельными таблицами в архитектуре DNN7. Я до сих пор не могу понять, как мне обрабатывать отношения базы данных «один ко многим». У меня есть 3 таблицы: таблица Product, Options и ProductMappings, где эта таблица сопоставляет продукт со многими параметрами. Для petapoco у меня есть класс продукта, класс productcontroller и то же самое для параметров. Теперь, когда я доберусь до таблицы Productmappings, должен ли я иметь для этого класс и класс контроллера или есть другой способ справиться с этим? Я уверен, что есть более простой способ, и поиск в Google недостаточно конкретен, они говорят мне, как получить что-то из таблицы сопоставлений (один ко многим), но не говорят мне, как правильно ее заполнить. Если бы кто-нибудь мог привести меня в правильном направлении, я был бы признателен.


person whreed    schedule 14.08.2014    source источник
comment
В этом посте мы обсудили некоторые способы создания отношений: представление сервера sql"> stackoverflow.com/questions/20503264/   -  person DotNetNuclear    schedule 14.08.2014
comment
Я думаю, что мой первоначальный вопрос не ясен. У меня есть один продукт со многими вариантами. У меня есть таблица для продукта и таблица для варианта. Моя третья таблица имеет product_id и option_id. Затем я могу связать продукт с несколькими вариантами. В основном я использую нормализованную компоновку таблицы. Мне нужно иметь возможность выполнять CRUD и на этой третьей таблице. Я не вижу нужной мне информации в этом посте.   -  person whreed    schedule 14.08.2014


Ответы (2)


Вам нужен класс, чтобы PetaPoco могла отображать результаты БД в объекты этого класса. Контроллер не нужен, если вы не будете взаимодействовать с этим классом из внешнего интерфейса.

person Eduardo Molteni    schedule 14.08.2014
comment
Я буду взаимодействовать с классом, потому что мне нужно сохранить параметры. По сути, когда пользователь редактирует продукт, он сможет выбрать, какие параметры есть у продукта. Поэтому мне нужно, чтобы в таблице были те, которые будут содержать productid с каждым optionid. - person whreed; 14.08.2014

На DNN9+ у меня не было возможности заставить его работать, кроме как с помощью столбца с атрибутом «IgnoreColumn» и загрузки значения из другого репозитория сущностей (при необходимости цикл)

person Mosta    schedule 17.11.2019