Мой проект состоит из двух разных классов.Один предназначен для данных приложения, которые используются для получения информации о каждой услуге, а второй - для справочных данных, в которых хранится название услуги.
Каждый клиент может иметь несколько услуг.У меня есть модель представления, которая содержит тип 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)?