В моей базе данных SQL Server есть две таблицы: Room
и Hotel
. HotelID
- это внешний ключ в таблице Room
. В таблице Room
есть 2 комнаты с HotelID = 1
.
Моя цель - попытаться получить HotelID
в методе GET
, тогда результат должен показать информацию об отеле и информацию Room
, которые имеют тот же HotelID
в таблице Hotel
,
То, что я получил из своего кода, показало только 1 комнату. Предполагается показать 2 комнаты
{"item1":{"hotelID":1,"hotelName":"Dope Hotel","hotelAddress":"1234 Test St","hotelCity":"asdf","hotelState":"AB","hotelZip":"56452","hotelCountry":"USA","hotelPhone":"8081234567"},"item2":{"roomID":1,"roomName":"Ocean View","roomDescription":"This is room Description","hotelID":1}}
Вот мой код:
[HttpGet]
[Route("api/hotel/gethotel/{HotelID}")]
public IActionResult GetByHotelID(int HotelID, string[] roominfo)
{
//check if the hotel ID is the same as the db hotelID
var hotelinfo = _context.Hotels.FirstOrDefault(t => t.HotelID == HotelID);
if (hotelinfo == null)
{
//if no item matches return id returning a http404 response
return NotFound();
}
//return 200 with JSON response body, returning ObjectResult
var rroominfo = _context.Rooms.FirstOrDefault(t => t.HotelID == HotelID);
var hrinfo = (hotelinfo, rroominfo);
if (rroominfo == null)
{
return new ObjectResult(hotelinfo);
}
else
{
return new ObjectResult(hrinfo);
}
}
Мой вопрос: как мне получить несколько комнат для моего результата, который включает в себя одинаковые HotelID
?