条件変数が真である回数をカウントし、比較のためにカウント変数を使用しようとしています。しかし、私はそれをコンパイルするとき、カウントは常に0になります、それは条件が真であっても、増分することはありません。条件文からのカウントの取得
foreach (ReservationType requestReservation in RequestReservation)
{
List<String> DateList = CreateDateList(requestReservation.StartDate, requestReservation.numDays);
foreach (Inventory inventory in RoomInventory)
{
if (requestReservation.hotelId == inventory.HotelId)
{
if (requestReservation.roomType == inventory.RoomType)
{
int count = 0;
int i = 0;
if (DateList[i] == inventory.Date && inventory.Quantity > 0)
{
count++;
if (requestReservation.numDays == count)
{
requestReservation.reservationId = reservationid;
requestReservation.result = ReservationType.ReservationResultType.Success;
inventory.Quantity--;
}
else
{
requestReservation.result = ReservationType.ReservationResultType.RoomNotAvailable;
}
}
}
}
}
reservationid++;
}
'int count = 0;'はforeachループの外にあるべきです –
コンパイル時に値を変更できますか?興味深い –