Razor 部分页面
最近在和师父一起打野,后台要求挺多的。后台还是用的EF和MVC5,页面使用的razor。
现在是发现好多的页面有太多重复的东西了。
比如说查询页面的字段,比如说列表页,比如说详情方法都有。
灵机一动,可不可以提出来呢?
事实证明可以的
这里需要利用razor的@Html.Partial
首先这个就是局部页面的意思,这里边包括了查询用的字段
然后发现列表页这些重复的就差一个url而已,列表项都一样的。那就想办法给url变成入参传过去。
方法一:
@Html.Partial("~/Views/Shared/App/_PartialReqQuery.cshtml", new ViewDataDictionary { { "url", @Url.Action("GetList") } })
这种是比较直接的获取的东西,一个参数或者参数比较少更适用。
方法二:
@*将查询条件作为部分页面,并传递参数*@
@{
ViewDataDictionary vdd = new ViewDataDictionary();
var url = @Url.Action("GetApplyedReqList") + "?QueryFlag=Applyed";
vdd.Add("url", url);
Html.RenderPartial("~/Views/Shared/App/_PartialReqQuery.cshtml", vdd);
}
这种方法可以传多个参数,适用多个入参的情况。这里额外介绍下,如果url是拼接出来的,直接这样写即可。
那么在部分页面中的使用方法是,借助ViewData方法来获取参数
var gridurl = '@Html.ViewData["url"]';
$('#List').datagrid({
url: gridurl,
width: SetGridWidthSub(),
method: 'post',
height: SetGridHeightSub(),
fitColumns: true,
sortName: 'CreateTime',
sortOrder: 'desc',
idField: 'Id',
pageSize: ,
pageList: [, , , , ],
pagination: true,
striped: true, //奇偶行是否区分
singleSelect: true,//单选模式
//rownumbers: true,//行号
columns: [[
{ field: 'Id', title: '主键', width: , hidden: true },
{ field: 'Title', title: '职位名称', width: , sortable: false },
{ field: 'Position', title: '职位类型', width: , sortable: false },
{ field: 'Country', title: '国家', width: , sortable: false },
{ field: 'Sex', title: '性别', width: , sortable: false },
{ field: 'AgeLimit', title: '年龄要求', width: , sortable: false },
{ field: 'YearSalary', title: '年收入', width: , sortable: false },
{ field: 'TotalHire', title: '招聘人数', width: , sortable: false },
{ field: 'Tag', title: '职位标签', width: , sortable: false },
{ field: 'TotalServiceMoney', title: '总服务费', width: , sortable: false },
{ field: 'PublishDate', title: '发布时间', width: , sortable: false },
{ field: 'ReqType', title: '类型', width: , hidden: true },
{
field: 'Ope', title: '操作', width: , formatter: function (value, row) {
var btn = '<a onclick="showDetails(\'' + row.Id + '\',\'' + row.Title + '\')" href="javascript:void(0)"> 查看详情</a>';
return btn;
}
},
]]
});
Razor 部分页面的更多相关文章
- MVC学习五:Razor布局页面 _ViewStart.cshtml
如图: _ViewStart.cshtml就是MVC中的布局页面/模板页面. 用户访问流程图: 原理:先去执行Views文件夹下[_ViewStart.cshtml]页面,然后同级目录文件夹(上图中的 ...
- 学习ASP.NET Core Razor 编程系列四——Asp.Net Core Razor列表模板页面
学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...
- 学习ASP.NET Core Razor 编程系列五——Asp.Net Core Razor新建模板页面
学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...
- Razor的主版页面框架
类似于2.0版本中的MasterPage主版页面框架,不过mvc3.0推出的RazorView内建的主版页面语法与原本的webFormview的MasterPage相差甚远 1,Razor的页面执 ...
- C#中的函数式编程:递归与纯函数(二) 学习ASP.NET Core Razor 编程系列四——Asp.Net Core Razor列表模板页面
C#中的函数式编程:递归与纯函数(二) 在序言中,我们提到函数式编程的两大特征:无副作用.函数是第一公民.现在,我们先来深入第一个特征:无副作用. 无副作用是通过引用透明(Referential ...
- ASP.NET MVC 5 Web编程4 -- Razor视图引擎
Razor简介 Razor是ASP.NET新增的一个视图引擎,由微软全球最年轻的副总裁,有着"ASP.NET之父"称呼的Scott Guthrie主导的团队开发. 主导Razor开 ...
- Razor基础语法简介
http://blog.csdn.net/pasic/article/details/7072340 Razor的出现,使页面看起更加简洁,Razor的页面后缀为:.cshtml Razor基础语法: ...
- ASP.NET MVC Razor视图引擎攻略
--引子 看下面一段MVC 2.0的代码. <%if (Model != null){%> <p><%=Model%></p><%}%>&l ...
- MVC小系列(十)【PartialView中的页面重定向】
在mvc的每个Action中,都可以指定一种返回页面的类型,可以是ActionResult,这表示返回的页面为View或者是一个PartialView, 在以Aspx为页面引擎时,PartialVie ...
随机推荐
- How to speed up insertion performance in PostgreSQL
Disable any triggers on the table Drop indexes before starting the import, re-create them afterwards ...
- 集成淘宝sdk
204是安全图片的问题, 请先检测以下几点: .请检测百川控制台是否已经申请初级API. .请检测百川控制台“我的产品后台”是否开通电商SDK应用.(重点检测很多用户疏忽这一点) .debug版本的可 ...
- poj 3498 最大流
March of the Penguins Time Limit: 8000MS Memory Limit: 65536K Total Submissions: 4809 Accepted: ...
- Qt ------ 内存回收机制、new对象的回收
写在前面的总结: 建议:对于不能指定父对象的对象(对象通过moveToThread()移入其他线程.没有继承QObject的类产生的对象),在其他线程通过deleteLater()内存回收,其他通过指 ...
- zookeeper源码分析之leader选举
zookeeper提供顺序一致性.原子性.统一视图.可靠性保证服务zookeeper使用的是zab(atomic broadcast protocol)协议而非paxos协议zookeeper能处理并 ...
- bzoj 2121 DP
首先如果我们能处理出来i,j段能不能消掉,这样就可以直接dp转移了,设w[i]为前i为最少剩下多少,那么w[i]=w[j-1] (flag[j][i]). 现在我们来求flag[i][j],首先我们可 ...
- Java常用开发思想与知识点小记(一)
1. 子类在覆盖父类的方法时,不能抛出比父类更多的异常(儿子不能比父亲干更多的坏事),所以只能捕捉异常,通常在web层捕获异常,给用户一个友好提示. 2.Java内存模型与并发编程三个特性 htt ...
- Java多线程学习(四)等待/通知(wait/notify)机制
转载请备注地址:https://blog.csdn.net/qq_34337272/article/details/79690279 系列文章传送门: Java多线程学习(一)Java多线程入门 Ja ...
- 【Python问题解决】关于解决python3.x无法使用PIL库的解决方法
因为PIL库目前只更新到python2.x,故python3.x直接安装PIL库会找不到版本.但是python3.x有一个新的库,可以提供和PIL差不多的功能,也就是pillow库. 本人使用的是py ...
- 【Python学习笔记】Coursera课程《Python Data Structures》 密歇根大学 Charles Severance——Week6 Tuple课堂笔记
Coursera课程<Python Data Structures> 密歇根大学 Charles Severance Week6 Tuple 10 Tuples 10.1 Tuples A ...