我一直在試圖從Microsoft Docs修改微軟文檔PaginatedList標準清單的工作(.NET核心MVC)
跟着我設法得到足夠遠的分頁例如,當方法傳遞PaginatedList
到視圖。然而,在這種return語句是抱怨的說法:
public async Task<IActionResult> TripTable(int? page)
{
var trips = from t in _tripcontext.Tripmetadata select t;
page = 1;
int pageSize = 10;
return PartialView("PartialTripsView", await PaginatedList<Tripmetadata>.CreateAsync(trips.AsNoTracking(), page ?? 1, pageSize));
}
我已成功地使其他車型這種方法的工作,但由於某種原因,它不爲我Tripmetadata和我的工作不知道這是爲什麼..
Tripmetadata.cs
namespace MSPFrontend.Models
{
public partial class Tripmetadata
{
public Tripmetadata()
{
Tripgpsdata = new HashSet<Tripgpsdata>();
Tripstate = new HashSet<Tripstate>();
}
[Key]
public int Tripid { get; set; }
[Display(Name = "Start Timestamp")]
public long? Starttimestamp { get; set; }
[Display(Name = "End Timestamp")]
public long? Endtimestamp { get; set; }
public long? Duration { get; set; }
[Display(Name = "Average Speed")]
public decimal? AvgSpeed { get; set; }
public decimal? Distance { get; set; }
public virtual ICollection<Tripgpsdata> Tripgpsdata { get; set; }
public virtual ICollection<Tripstate> Tripstate { get; set; }
}
}
我怎樣才能使我的Tripmetadata模型工作?
UPDATE
我試圖通過添加以下(非異步函數)修改我PaginatedList類,但沒有成功:
public static Task<PaginatedList<T>> Create(List<T> source, int pageIndex, int pageSize)
{
var count = source.Count();
var items = source.Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList();
return new PaginatedList<T>(items, count, pageIndex, pageSize);
}
但是現在抱怨說,它不能:
Cannot implicitly convert type 'MSPFrontend.Data.PaginatedList<T>' to 'System.Threading.Tasks.Task<MSPFrontend.Data.PaginatedList<T>>'
您是否有第二類名爲Tripmetadata?錯誤意味着這兩個列表是不同的類型。 –