• 首页
  • 作文
  • 散文
  • 故事
  • 古诗
  • 短文
  • 语录
  • 写作
  • 诗歌
  • 百科
  • 知识
  • 首页
  • 作文
  • 散文
  • 故事
  • 古诗
  • 短文
  • 语录
  • 写作
  • 诗歌
  • 百科
  • 知识
首页 » 生活常识 » mvc跳转页面方法(ASP.NET页面跳转的几种方法)

mvc跳转页面方法(ASP.NET页面跳转的几种方法)

分类:生活常识 日期:2022-08-25 17:22 浏览:4 次

1.ASP.NET页面跳转的几种方法

2. 这是最常见的一种转向方法;

HyperLink控件

1. Asp.net 服务器端控件 属性NavigateUrl指定要跳转到的Url地址

2. NavigateUrl是可以在服务器端使用代码修改,这个区别于<a

3. 由于HyperLink本身没有事件所以要在服务器端其它事件中设置NavigateUrl

4. 代码示例

<Asp:HyperLink id=”hyperlink” runat=”server” NavigatoeUrl=”test.aspx”ok</Asp:HyperLink

Response.Redirect()方法

1. 过程:发送一个Http响应到客户端,通知客户端跳转到一个新的页面,然后客户端再发送跳转请求到服务器端。

2. 页面跳转之后内部控件保存的所有信息丢失,当A跳转到B,B页面将不能访问A页面提交的数据信息。

3. 使用这个方法使用这个方法跳转后浏览器地址栏的Url信息改变

4. 可以使用Session Cookies Application等对象进行页面间的数据传递

5. 重定向操作发生在客户端,总共涉及到两次与Web服务器的通信:一次是对原始页面的请求,另一次是重定向新页面的请求

Server.Transfer()方法

1. 实现页面跳转的同时将页面的控制权进行移交

2. 页面跳转过程中Request Session等保存的信息不变,跳转之后可以使用上一个页面提交的数据

3. 跳转之后浏览器地址栏的Url不变

4. 这种方法的重定向请求是在服务器端的进行的,浏览器不知道页面已经发生了一次跳转

Server.Execute()方法

1. 该方法允许当前页面执行同一个Web服务器上的另一个页面

2. 页面执行完毕之后重新回到原始页面发出Server.Execute()的位置。

3. 这种方式类似针对页面的一次函数调用 被请求的页面可以使用原始页面的表单数据和查询字符串集合

4. 被调用页面的Page指令的EnableViewStateMac属性设置为FalseJavaScriptstring str = "<script language=javascripthistory.go(-2);</script";

Response.Write(str);相关:

1. 为了确保HTML输出的合法性 最好使用Response.Redirect方法;因为Server.Execute 或者Server.Transfer方法返回给客户端的页面包含多个<Html<body标记,不是合法的HTML页面,在非IE浏览器中可能会发生错误。

2.springmvc怎么跳转页面

需求:spring MVC框架controller间跳转,需重定向。

有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示。本来以为挺简单的一件事情,并且个人认为比较常用的一种方式,一百度全都有了,这些根本不是问题,但是一百度居然出乎我的意料,一堆都不是我想要的结果。

无奈啊,自己写一篇比较全都供以后大家一百度吧,哈哈哈。

是这些写的不是很全都人们给了我写这篇博客的动力。

2. 解决办法 需求有了肯定是解决办法了,一一解决,说明下spring的跳转方式很多很多,我这里只是说一些自我认为好用的,常用的,spring分装的一些类和方法。 (1)我在后台一个controller跳转到另一个controller,为什么有这种需求呢,是这样的。

我有一个列表页面,然后我会进行新增操作,新增在后台完成之后我要跳转到列表页面,不需要传递参数,列表页面默认查询所有的。 方式一:使用ModelAndView return new ModelAndView("redirect:/toList"); 这样可以重定向到toList这个方法 方式二:返回String return "redirect:/ toList "; 其它方式:其它方式还有很多,这里不再做介绍了,比如说response等等。

这是不带参数的重定向。 (2)第二种情况,列表页面有查询条件,跳转后我的查询条件不能丢掉,这样就需要带参数的了,带参数可以拼接url 方式一:自己手动拼接url new ModelAndView("redirect:/toList?param1="+value1+"&param2="+value2); 这样有个弊端,就是传中文可能会有乱码问题。

方式二:用RedirectAttributes,这个是发现的一个比较好用的一个类 这里用它的addAttribute方法,这个实际上重定向过去以后你看url,是它自动给你拼了你的url。 使用方法: attr.addAttribute("param", value); return "redirect:/namespace/toController"; 这样在toController这个方法中就可以通过获得参数的方式获得这个参数,再传递到页面。

过去的url还是和方式一一样的。 (3)带参数不拼接url页面也能拿到值(重点是这个) 一般我估计重定向到都想用这种方式: @RequestMapping("/save") public String save(@ModelAttribute("form") Bean form,RedirectAttributes attr) throws Exception { String code = service.save(form); if(code.equals("000")){ attr.addFlashAttribute("name", form.getName()); attr.addFlashAttribute("success", "添加成功!"); return "redirect:/index"; }else{ attr.addAttribute("projectName", form.getProjectName()); attr.addAttribute("enviroment", form.getEnviroment()); attr.addFlashAttribute("msg", "添加出错!错误码为:"+rsp.getCode().getCode()+",错误为:"+rsp.getCode().getName()); return "redirect:/maintenance/toAddConfigCenter"; } }@RequestMapping("/index") public String save(@ModelAttribute("form") Bean form,RedirectAttributes attr) throws Exception { return "redirect:/main/list"; }页面取值不用我说了吧,直接用el表达式就能获得到,这里的原理是放到session中,session在跳到页面后马上移除对象。

所以你刷新一下后这个值就会丢掉。3. 总结 最底层还是两种跳转,只是spring又进行了封装而已,所以说跳转的方式其实有很多很多种,你自己也可以封一个,也可以用最原始的response来,也没有问题。

好了,就到这儿。

3.C#中跳转页面有那几种方法,简述其区别

1.<a href="Default.aspx"跳转</a

2.<asp:HyperLink id="HyperLink1" runat="server" NavigateUrl="Default.aspx"跳转</asp:HyperLink

3.Response.Redirect(url) //第一种跳转方法

4.Server.Transfer(url) //第二种跳转方法

5.Sever.Execute(url) //第二种跳转方法

二、使用说明

1-2.这里说一下HyperLink的功能和<a href="#"</a一样的。如果想要提交到服务器端跳转需要使用LinkButton控件,可以实现多种链接效果,并且与button、imagebutton的功能是一样滴~。

3.Response.Redirect():首先发送一个HTTP响应到客户端,通知客户端跳转到一个新的页面,然后客户端再发送跳转请求道服务器端。在页面跳转后内部控件保存的所有数据信息将丢失,因此当页面A跳转到页面B,页面B将无法访问页面A中提交的数据信息,跳转页面后浏览器地址栏的URL信息转变。

4.Server.Transfer():在实现页面跳转的同时将页面处理的控制权进行移交。页面A跳转到页面B后可以继续使用页面A中提交的数据信息。此方法由页面A跳转到页面B后,浏览器的地址仍保持页面A的URL信息。

5.Server.Execute():允许当前页面执行同一Web服务器上的另一页面,当另一页面执行完毕后,控制流程重新返回到原页面发出Server.Execute的调用位置。

4.MVC默认页面action跳转

希望它的默认页是index.html页,在vs2010中给站点根目录增加了index.html,然后调用没有什么问题,但部署到IIS7上,在功能试图=》默认文档添加了index.html,但是只输入域名还是访问不到,看来还是.net mvc和IIS不兼容的原因,后来同事采用的办法是在global文件中把默认页面写成一个需要登录的页面,这样因为没有权限,系统会自动跳转到登录页面

public static void RegisterRoutes(RouteCollection routes)

{

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

routes.MapRoute(

"Default", // 路由名称

"{controller}/{action}/{id}", // 带有参数的 URL

new { controller = "IndexPage", action = "Index", id = UrlParameter.Optional } // 参数默认值

);

}

朋友找到了一个很好的博文,感觉实现方法更加灵活,具体如下:

方法1:

在Global.asax文件中增加

protected void Application_BeginRequest(object sender, EventArgs e)

{

if (Context.Request.FilePath == "/") Context.RewritePath("index.html");

}

方法2:

新建一个路由DefaultController,并把它设置为默认路由,在Action中增加

Redirect(Url.Content("~/index.html"));

此方法需要修改web.config配置

在Web.config文件中的节点中增加:

方法3:

1)站点根目录增加了default.html;

2)修改Global.asax默认的路由注册,去掉默认controller:

routes.MapRoute(

"Default", // 路由名称

"{controller}/{action}/{id}", // 带有参数的 URL

new {action = "Index", id = UrlParameter.Optional } // 参数默认值

);

将iis中的默认文档配置为index.html

mvc跳转页面有哪些方法

相关推荐:
  • 麻腐怎么做好吃(麻腐怎么制作好吃)
  • 豆皮怎么炒好吃又简单 有什么做豆皮的技巧视频
  • 炒羊杂的家常做法(芹菜炒羊杂的家常做法)
  • 西藏土特产有哪些?(西藏土特产店名)
  • 生活中常见的加工食品有哪些种类(生活中常见的支付系统有哪些?)
上一篇:英语本科法律硕士(英语系考法律硕士前景如何) 下一篇:银行评选活动(关于银行柜面优质服务活动计划)

相关推荐

麻腐怎么做好吃(麻腐怎么制作好吃)
豆皮怎么炒好吃又简单 有什么做豆皮的技巧视频
炒羊杂的家常做法(芹菜炒羊杂的家常做法)
西藏土特产有哪些?(西藏土特产店名)
生活中常见的加工食品有哪些种类(生活中常见的支付系统有哪些?)
《次北固山下》这首诗的主旨是什么(次北固山下这首诗的主旨)
从0到100共有多少个0(0到100有多少个0有多少个1)
百分百羊毛大衣可以水洗吗(不是百分百羊毛呢大衣可以水洗吗)
执行标准26760-20什么意思
知了能吃吗吃了对身体有什么好处(知了能吃吗?它对人有什么好处啊)
潮流时尚 写作素材 创新创业
生活常识 策划方案 安全知识
自考专业 家居生活 三农创业
励志故事 时尚穿搭 星座知识
热门分类

声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
 蜀ICP备2020033479号-4  Copyright © 2016  学习鸟. 页面生成时间:3.701秒

返回顶部