我正在开发自定义寻呼机控件到我的网格视图。语法之间的区别
我使用下面的语法来获得无页:
dblpagecount = (doble)(totrecords/grdPages.PageSize);
pagecount = (int)Math.Ceiling(dblPagecount);
使用上述语法,如果没有的记录是41和页面大小为5,然后我得到PAGECOUNT为8应该是9 。
如果我使用下面的语法,
double dblPagecount = (double)((decimal)totrecords /grdPages.PageSize);
pagecount = (int)Math.Ceiling(dblPagecount);
我得到确切的页数即9
我得到了期望的结果,但无法理解为什么上述synatax没有给出预期的结果。
当我在第一种情况下调试,我观察到dblpagecount是获得结果作为8.0 insted的8.2
任何一个可以请澄清,说明如何上面的作品?
totrecords和grdPages.PageSize都是int吗? – Muctadir
请看这个答案http://stackoverflow.com/questions/10851273/why-integer-division-in-c-sharp-returns-an-integer-but-not-a-float –
也许你是一个前VB。 NET开发人员。 VB.NET在整数除法行为不同http://stackoverflow.com/questions/6013626/vb-net-vs-c-sharp-integer-division –