Я работаю над приложением Asp.Net Core. У меня есть 4 таблицы, которые связаны между собой.
Город, улица, дом и сигнализация.
Приложение для управления установками сигнализации.
Дом принадлежит улице и городу. Они связаны между собой. Дом имеет атрибут DoorNr ...
Когда я пытаюсь создать новую установку будильника. Он показывает мне дома, которые у меня есть по Id, но мне нужно, чтобы показать полный адрес. проблема в том, что у класса дома есть только StreetId (от Street Class) и DoorNr. Как мне сделать так, чтобы он показывал полный адрес?
public partial class AlarmInstall
{
public int AlarmInstallId { get; set; }
public int HouseId { get; set; }
public string Model { get; set; }
public virtual House House { get; set; }
}
public partial class House
{
public House()
{
AlarmInstall = new HashSet<AlarmInstall>();
}
public int HouseId { get; set; }
public int StreetId { get; set; }
public string DoorNr { get; set; }
public int CityId { get; set; }
public virtual City City { get; set; }
public virtual Street Street { get; set; }
public virtual ICollection<AlarmInstall> AlarmInstall { get; set; }
}
public partial class Street
{
public Street()
{
House = new HashSet<House>();
}
public int StreetId { get; set; }
public string StreetName { get; set; }
public virtual ICollection<House> House { get; set; }
}
public partial class City
{
public City()
{
House = new HashSet<House>();
}
public int CityId { get; set; }
public string CityName { get; set; }
public virtual ICollection<House> House { get; set; }
}
Мой AlarmsInstallController имеет следующий код:
// GET: AlarmInstalls/Create
public IActionResult Create()
{
ViewData["HouseId"] = new SelectList(_context.House, "HouseId", "HouseId");
return View();
}
// POST: AlarmInstalls/Create
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Create([Bind("AlarmInstallId,HouseId,Model")] AlarmInstall alarmInstall)
{
if (ModelState.IsValid)
{
_context.Add(alarmInstall);
await _context.SaveChangesAsync();
return RedirectToAction(nameof(Index));
}
ViewData["HouseId"] = new SelectList(_context.House, "HouseId", "DoorNr", alarmInstall.HouseId);
return View(alarmInstall);
}
И мой вид имеет следующий код:
<form asp-action="Create">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="form-group">
<label asp-for="HouseId" class="control-label"></label>
<select asp-for="HouseId" class ="form-control" asp-items="ViewBag.HouseId"></select>
</div>
Это мой список выбора для HouseId ...
ViewData["HouseId"] = new SelectList(_context.House, "HouseId", "HouseId");
Мне нужно показать полный адрес, составленный из streetName (из StreetClass) и DoorNr, а не HouseId, что я должен изменить в своем коде?
Заранее спасибо за любую помощь !!!