ef6 метод linq, возвращающий $ ref для вложенных записей в запросе - PullRequest
0 голосов
/ 01 февраля 2019

моя система методов linq из EF6 возвращает $ ref, когда я отслеживаю результаты в fiddler.Если я смотрю локальное окно в моем webapi, все заполняется правильно, но не в реальных результатах, которые возвращаются.Это влияет только на вложенные записи.кто-нибудь знает, что я делаю не так?(Я создал модели из базы данных в EF6)

            var student = dbEF.Accounts
                        .Where(x => x.AccountNumber == acctNum)
                        .Select(x => new DTOCrmDetails()
                        {
                            AccountNumber = x.AccountNumber,

                            CommissionId = x.CommissionId,
                            Commission = x.Commission,

                            ManagerID = x.ManagerID,
                            ManagerName = x.Manager.ManagerName,
                            Manager = x.Manager,

                            Employees = x.Manager.Employees,

                            WireInstructionsUSD = x.Manager.WireInstructionsUSDs

                        //Mapping_ManagersExecutingBrokers = x.Manager.Mapping_ManagersExecutingBrokers

                    }).FirstOrDefault();

        return student;

это мои настройки.

var json = config.Formatters.JsonFormatter; json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects; config.Formatters.Remove(config.Formatters.XmlFormatter); config.Formatters.JsonFormatter.SerializerSettings.Formatting = Newtonsoft.Json.Formatting.Indented; config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();

1 Ответ

0 голосов
/ 01 февраля 2019

Вам нужно отключить ленивую загрузку в платформе сущностей dbcontext.

примерно так:

dbEF.Configuration.LazyLoadingEnabled = false;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...