你这逻辑本身就有问题
先执行首页也就是下面这个action,传给View数据v,类型是List<Download>,这一步无非就是把数据传给View
但是后面的分页代码里的逻辑就不对了,你直接把数据传给下一页,而你却用的get参数,那不出现SystemCollectionsGenericList`1[class13Modelsdownload] 才怪呢
且不说你这把所有数据取出来分页,而且还想把数据传到前台然后整个又传到后台通过Take(6)的做法有多偷懒了
从你这么偷懒的思路搞得话好得也得把你的List<Download>放在服务器端(可以通过Session存),肯定不能放到客户端,否则每次数据往来大部分都是这所有分页数据,超过get或post数据传输限制是很容易的
不偷懒的搞法当然是进行数据库分页,通过索引和每页项数获取数据
最后2 参数:
absoluteExpiration
类型:SystemDateTime
所插入对象将过期并被从缓存中移除的时间。若要避免可能出现的本地时间方面的问题(如从标准时间更改为夏时制),请对此参数值使用 UtcNow,不要使用Now。如果使用绝对过期,则slidingExpiration 参数必须为 NoSlidingExpiration。
slidingExpiration
类型:SystemTimeSpan
最后一次访问所插入对象时与该对象过期时之间的时间间隔。如果该值等效于 20 分钟,则对象在最后一次被访问 20分钟之后将过期并被从缓存中移除。如果使用可调过期,则 absoluteExpiration 参数必须为NoAbsoluteExpiration。
你的要求可以这样实现:
>本文实例为大家分享了jQuery Pagination分页插件的具体代码,供大家参考,具体内容如下
一、引用CSS和JS:
<link href="/Content/Plugins/jQueryPagination_v22/paginationcss" rel="external nofollow" rel="stylesheet" type="text/css" /> <script src="/Content/Plugins/jQueryPagination_v22/jquerypaginationjs" type="text/javascript"></script>
二、HTML:
<div id="Pagination" class="flickr" style="margin-top: 10px; margin-left: 10px;"> </div>
三、JS:
$(function () { var total = parseInt("@(ViewBagtotal)"); var page = parseInt("@(ViewBagpage)") - 1; var pageSize = parseInt("@(ViewBagpageSize)"); $("#Pagination")pagination(total, { callback: function (page_id) { windowlocation = "BoardListpage=" + page_id + "&pageSize=" + thisitems_per_page; }, //PageCallback() 为翻页调用次函数。 prev_text: " 上一页", next_text: "下一页 ", items_per_page: 10, //每页的数据个数 num_display_entries: 1, //两侧首尾分页条目数 current_page: page, //当前页码 num_edge_entries: 11 //连续分页主体部分分页条目数 }); });
四、后台代码:
public ActionResult BoardList() { PagerModel pager = new PagerModel(); if (Request["page"] == null) { pagerpage = 1; pagerrows = 10; pagersort = "Id"; pagerorder = "desc"; } else { pagerpage = intParse(Request["page"]) + 1; pagerrows = intParse(Request["pageSize"]); pagersort = "Id"; pagerorder = "desc"; } boardManageServiceGetList(ref pager); List<BoardModel> boardList = pagerresult as List<BoardModel>; ViewData["BoardModelList"] = boardList; ViewBagpage = pagerpage; ViewBagtotal = pagertotalRows; ViewBagpageSize = pagerrows; return View(); } #endregion
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
查看这个object对象里面的元素,是否有主键,有的话直接(object主键)这样就能出来
而且你这里var model = IqualityMeetionRepositoryGet(id);
ViewBagCaption = "修改";
return View(model);返回的就是对象不是主键值。
1、首先运行vs2015。
2、简单的新建一个c#的web工程。
3、右键我们的项目,选择nuget来管理程序包。
4、在nuget中找到NewtonsoftJson 下载并安装。
5、在HomeController中我们先添加NewtonsoftJson引用。
6、 ViewBagstrings = JsonConvertSerializeObject(objects);我们将这个 ViewBagstrings 在view页面中实现。
7、JsonConvertDeserializeObject 方式就是将一个json字符串转为json对象。
在控制器中先把数据查出来,
然后在返回的地方带上MODEL,或者VIEWBAG
如:
//获取用户未读消息
ViewBagUnRead = _SpaceBLLGetUnReadNotificationByUser(UserID, _SchoolBLLGetSchoolByUserID(UserID)SchoolID);
或者
return view(model);
前台@modelxxxx就可以了!
以上就是关于asp.net mvc viewbag为什么传值到view后再获取失败全部的内容,包括:asp.net mvc viewbag为什么传值到view后再获取失败、C# Cache.Insert 里面的参数TimeSpan.Zero、jQuery分页插件pagination具体怎么用求详细教程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)