分页
在有些分页中,提供的是CurrentPage与PageSize再作计算;有些则是提供StartRowIndex与PageSize进行分页的计算。 QueryInfo qi = Info;
// Presenter.OnSelecting<BMS_BK_REGISTRY>(Info);
QueryInfo info = new QueryInfo();
info.MappingName = "BMS_BK_REGISTRY_SEARCHLIST";
String param = "<?xml version=\"1.0\" encoding=\"utf-16\"?><SearchBookingRegistryParams xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"> <Service /> <Vessle /> <Voyage /> <Leg /> <Pol /> <PolCallNum /> <Pod /> <PodCallNum /> <Plr /> <Pld /> <BookingNo /> <BookingType /> <DeliveryFrom /> <DeliveryTo /> <Party /> <Shipper /> <EtdFrom /> <EtdTo /> <IsPanding>true</IsPanding> <IsConfirm>true</IsConfirm> <IsCancel>true</IsCancel> <AcceptSR>false</AcceptSR></SearchBookingRegistryParams>";注意使用\"来转意你要定义的"字符串"里面的引号。
info.Parameters["PARAMS"] = param;
info.Parameters["CURRENT_PAGE"] = qi.StartRowIndex / qi.MaximumRows + 1;
info.Parameters["PAGE_SIZE"] = qi.MaximumRows;
info.Parameters["RECORDER_COUNT"] = 0;
info.Parameters["PAGE_COUNT"] = 0;
Presenter.OnSelecting<BMS_BK_REGISTRY>(info);
// Info.Count = int.Parse(info.Parameters["RECORDER_COUNT"].ToString()); 此句无效,因为Info是序列化的。只能通过如下的this.Info=qi.调用框架中序列化过程才能赋值成功。
qi.Count = int.Parse(info.Parameters["RECORDER_COUNT"].ToString());
this.Info = qi;