Это касается Dapper в ASP.NET MVC3.Dapper with multimapping с использованием хранимой процедуры
У меня есть две таблицы tblBranchMaster
, tblZoneMaster
в моей базе данных и два файла класса с одинаковыми деталями.
tblBranchMaster(ID, ZoneID, Name);
tblZoneMaster(ID, Name);
Обе таблицы имеют отношение к первичному ключу с внешним ключом.
У меня есть хранимая процедура, которая имеет следующий запрос:
Select * from tblBranchMaster;
с каким-либо другим логическим материалом.
Теперь, как мне получить результат зоны с ее связанной веткой в списке.
У меня следующий базовый код:
List<tblBranchMaster> lstResult = Query<tblBranchMaster, tblZoneMaster, tblBranchMaster>
(tblBranchMaster.uspGetBranchListPagination, (objBranch, objZone) =>
{ objBranch.ZoneMaster = objZone; return objBranch; },
param, splitOn:"Id").ToList();
Этот код дает мне следующее сообщение об ошибке:
When using the multi-mapping APIs ensure you set the splitOn param if you have keys other than Id
Parameter name: splitOn
Что я отсутствующий ???
Что делать, если я не хочу использовать JOIN, так как обе таблицы имеют отношения, я не могу получить результат, основанный на отношении типа i n Структура сущностей. – Sham
Dapper основан на написании собственных запросов, чтобы сформировать результат по мере необходимости, чтобы получить данные. Он не обрабатывает запросы автоматически, если вы не используете [Dapper Rainbow] (https://www.nuget.org/packages/Dapper.Rainbow). Однако Rainbow не обрабатывает привязки к моему воспоминанию. – PHeiberg