Hej, zastanawiam się, czemu nie mogę wykonać rzutowania w konstruktorze modelu widoku:
public BookingsViewModel()
{
IEnumerable<Booking> bookingsDB = repository.GetBookings();
model = bookingsDB; //wyjątek
}
Rzuca mi to wyjątkiem:
Cannot implicitly convert type 'System.Collections.Generic.IEnumerable<Library2.Models.Booking>' to 'Library2.Models.Bookings'. An explicit conversion exists (are you missing a cast?)
W czasie gdy GetBookings() wygląda tak:
public IEnumerable<Booking> GetBookings()
{
var bookings = context.Bookings.
Include(i => i.Book).
Include(i => i.Reader).
AsEnumerable().
ToList();
return bookings;
}
A model **Bookings **tak:
public class Bookings : IEnumerable<Booking>
{
private List<Booking> bookingList = new List<Booking>();
public void AddBooking(Booking booking)
{
bookingList.Add(booking);
}
public bool DeleteBooking(Booking booking)
{
return bookingList.Remove(booking);
}
public int BookingList
{
get
{
return bookingList.Count;
}
}
public Booking this[int index]
{
get
{
return bookingList[index];
}
}
public IEnumerator<Booking> GetEnumerator()
{
return bookingList.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
}
Gdzie leży problem, skoro Bookings implementuje IEnumerable<Booking>?