MVC中自定义ViewPage和WebViewPage
2024-09-05 03:56:50
ViewPage和WebViewPage的作用就是将Controller中数据返回给页面,一个是针对aspx一个相对cshtml的。代码如下:
public abstract class WebViewPage<TModel> : System.Web.Mvc.WebViewPage<TModel>
{
public string MytestViewPage; public override void InitHelpers()
{
base.InitHelpers();
MytestViewPage = "你好这里是ViewPage测试!";
} } public abstract class WebViewPage : WebViewPage<dynamic>
{
} public abstract class ViewPage<TModel> : System.Web.Mvc.ViewPage<TModel>
{
public string MytestViewPage; public override void InitHelpers()
{
base.InitHelpers();
MytestViewPage = "你好这里是ViewPage测试!";
} } public abstract class ViewPage : ViewPage<dynamic>
{
}
定义好之后还差一道工序才能在前台页面上使用,将Views下面的Web.config文件中的默认ViewPage和WebViewPage修改成自定义的如下:
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="Mv3.ViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="Mv3" />
</namespaces>
</pages>
</system.web.webPages.razor> <system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="Mv3.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="Mv3" />
</namespaces>
</pages>
</system.web.webPages.razor>
对于cshtml已经万事大吉了,可aspx还不行还得修改页面上的ViewPage如下:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<Aqioo.Models.UserModel>" %> 改成 <%@ Page Language="C#" Inherits="Mv3.ViewPage<Aqioo.Models.UserModel>" %>
这样你在ViewPage中定义的数据就可以在前台页面上使用了。如在继承了自定义ViewPage和WebViewPage的页面中使用MytestViewPage(在ViewPage中定义的)
<div><%=MytestViewPage %></div>
最新文章
- iOS中使用正则
- Leetcode 详解(valid plindrome)
- css样式重置,不建议用通配符
- maven: 打包可运行的jar包(java application)及依赖项处理
- css3 总结02
- linux 修改ssh端口号
- 【Leetcode】【Hard】Valid Number
- VC基于消息的异步套接字
- HOW TO REMOTELY DEBUG APPLICATION RUNNING ON TOMCAT FROM WITHIN INTELLIJ IDEA
- 线性表之顺序表(C语言实现)
- Automake创建项目
- The Swift Programming Language-官方教程精译Swift(5)集合类型 -- Collection Types
- 2.4G无线收发模块/射频RFM75调试总结/RF知识整理
- 制作ssh互信的docker镜像
- C#监控指定目录的文件变化的代码
- FFmpeg的一般流程
- MapReduce与关系型数据库的不同之处。
- pytorch使用tensorboardX进行loss可视化
- 【liunx】sftp常用命令
- 写了一个bug----使用已经被删除的内存
热门文章
- lombok 去除麻烦的实体类get和set,toString书写
- nginx索引目录配置
- Eclipse中一个Maven工程的目录结构 (MacOS)
- [Atcoder Grand Contest 006 F][AGC006F] Blackout [染色]
- [1]区分event对象中的[clientX,offsetX,screenX,pageX]
- 【ZOJ4062】Plants vs. Zombies(二分)
- 使用select2插件并添加拼音首字母检索
- [ CodeVS冲杯之路 ] P1039
- Application binary interface and method of interfacing binary application program to digital computer
- Android BroadcastReceiver使用