LINQ-запросы занимают больше времени для выполнения - PullRequest
0 голосов
/ 26 апреля 2018

Это мой запрос LINQ, выполнение которого занимает очень много времени.
Кто-нибудь может мне подсказать, как сделать это быстрее.
Этот запрос занимает почти 1,35 мин для загрузки.

Из списка, который я добавляю в модель

var jobList = option.Equals("search")
        ? _jobService.SearchJobs(_dataModel.SearchFilter, _dataModel.CurrentPage - 1, _dataModel.EntriesPerPage,
            _dataModel.KeyWords, _dataModel.Location)
        : _jobService.BrowsJobs(_dataModel.BrowseFilterIds, _dataModel.CurrentPage - 1,
            _dataModel.EntriesPerPage);
    _dataModel.DbJobs = jobList;
    _dataModel.Jobs = jobList.Select(job => new JobsViewModel
    {
        JobId = job.JobId,
        JobTitle = job.JobTitle,
        SeoFriendlyJobTitle = job.JobTitle.ToSeoFriendly(),
        Created = job.Created,
        CreatedBy = job.CreatedBy,
        LocationName =
            job.LocationId != null
                ? _locationService.GetById((int)job.LocationId).LocationName
                : string.Empty,
        JobTypeName = _jobTypeService.GetById(job.JobTypeId).JobTypeName,
        RecruiterName =
            job.RecruiterId != new Guid()
                ? _recruiterService.GetById(job.RecruiterId).RecruiterName
                : string.Empty,
        SeoFriendlyRecruiterName =
            job.RecruiterId != new Guid()
                ? _recruiterService.GetById(job.RecruiterId).RecruiterName.ToSeoFriendly()
                : string.Empty,
        RecruiterId = job.RecruiterId,
        StartDate = job.StartDate,
        LocationDescription = job.LocationDescription,
        SalaryDescription = job.SalaryDescription,
        JobSummary = job.JobSummary,
        JobSummaryShort = job.JobSummaryShort,
        LogoPath = job.Logo.IsNullOrWhiteSpace() ? job.LogoOverride : job.Logo,
        PremiumJob = job.Advertising.Count > 0 && job.Advertising.ElementAt(0).PremiumListing,
        DaysRemaining = new Helpers().BuildDaysRemainingString(job.EndDate)
    }).ToList();

1 Ответ

0 голосов
/ 03 мая 2018

Это сервисные звонки внутри вашего запроса? Если это так, то, скорее всего, именно это способствует медлительности.

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