Получить значение литеральной строки из справочной таблицы на основе идентификатора - PullRequest
1 голос
/ 09 мая 2019

Мой проект состоит из двух разных классов.Один предназначен для данных приложения, которые используются для получения информации о каждой услуге, а второй - для справочных данных, в которых хранится название услуги.

Каждый клиент может иметь несколько услуг.У меня есть модель представления, которая содержит тип CustomerServices.Я пытаюсь получить все обслуживание клиентов одного клиента.Я получаю это правильно через запрос linq, но он возвращает идентификатор службы, но я хочу распечатать название службы, посмотрев на справочные данные.Я могу присоединиться к ним в своем запросе Linq, но ViewModel не имеет атрибута для имени службы, так как я могу показать имя службы вместо идентификатора в моем представлении бритвы?

Linq Query

 var data = from profile in _context.Customers
             join services in _context.CustomerServices
             on profile.strUserID equals services.strUserID
             join refServices in _context.ServicesOffered
             on services.lngServiceID equals refServices.lngServiceID
             where profile.strUserID == UserId
             select new { p = profile,  s = services, refs = refServices };

My View Model

  public class ServiceProvider
    { 
        public CustomerProfile Customer { get; set; }
        public IEnumerable<CustomerProfile> CustomerProfiles { get; set; }
        public CustomerServices CustomerServices { get; set; }
    }

Код контроллера:

 var serviceProviderViewModel = new ServiceProvider
            {
                Customer = new CustomerProfile(),
                CustomerServices = new CustomerServices(),
            };

 foreach (var v in data)
            {
                serviceProviderViewModel.Customer = v.p;
                serviceProviderViewModel.CustomerServices = v.s;
                RatingList.Add(v.r); 
            }
            serviceProviderViewModel.CustomerRating = RatingList;


Страница просмотра бритвы

 <span>@Html.DisplayFor(modelItem => Model.CustomerServices.lngServiceID):$@Html.DisplayFor(modelItem => Model.CustomerServices.ServiceRatePerNight)</span>

Прямо сейчас она печатает ID сервиса, который 10: $ 45,Как я могу получить название сервиса и распечатать его вместо id (10)?

...