Я работаю над веб-приложением, которое может отображать данные из базы данных Oracle.
Например, если мне нужно отобразить деталь, мне нужны следующие отношения:
Parts have 0-1 AdditionalInformations
Parts have 0-1 ReferencePart
Parts have 1 Type
Parts have 1-* Tasks
Parts have 0-* Locations
Более того:
AdditionalInformations have 0-* Users
And Locations have 1 AdditionalLocationInfo
Итак, я хочу получить часть из db, удалить контекст и после этого я хочу отобразить часть, включая ранее упомянутые отношения.
Я использую EntityFramework 6с LINQ для запросов.И БАЗА ДАННЫХ ORACLE 12c для хранения Данных
var query = from part in _dbcontext.Part.AsNoTracking()
where part.Id == partId
select part;
return query
.Include(p => p.Type)
.Include(p => p.AdditionalInformations.Users)
.Include(p => p.ReferencePart)
.Include(p => p.Locations.Select(l => l.AdditionalLocationInfo))
.Include(p => p.Tasks)
.SingleOrDefault();
К сожалению, это дает мне исключение ORA-01790 ...
Если я использую меньше, Включает, это работает!:
var query = from part in _dbcontext.Part.AsNoTracking()
where part.Id == partId
select part;
return query
.Include(p => p.Type)
.Include(p => p.Locations.Select(l => l.AdditionalLocationInfo))
.SingleOrDefault();
var query = from part in _dbcontext.Part.AsNoTracking()
where part.Id == partId
select part;
return query
.Include(p => p.Type)
.Include(p => p.AdditionalInformations.Users)
.Include(p => p.ReferencePart)
.SingleOrDefault();
Но да, мне нужны все отношения ...
Поэтому, пожалуйста, дайте мне информацию о том, как решить эту проблему :) Спасибо!