设为首页 收藏本站
查看: 862|回复: 0

[经验分享] IIS 中Asp.net网站输入网站名默认页提交问题解决

[复制链接]

尚未签到

发表于 2015-8-13 07:02:18 | 显示全部楼层 |阅读模式
  最近用vs2010开发的一个网站中,设置了默认页为default.aspx,但只输入网站名的情况下,该页面数据不能正常提交,后台调试代码发现并不执行。进一步发现,如果建立web应用程序时,不存在该问题。为使输入默认网站时能够正常提交数据,增加了Form的Action属性:


   1: <form runat="server" action="Default.aspx" defaultfocus="username">   2:                    <ul>   3:                        <li runat="server" class="wrong" id="errorMsg" clientidmode="Static">&nbsp;</li>   4:                        <li>用户名:   5:                            <input type="text" class="wid" id="username" name="username" runat="server" tabindex="1"   6:                                clientidmode="Static" />   7:                        </li>   8:                        <li>密&nbsp;&nbsp;&nbsp;&nbsp;码:   9:                            <input type="password" class="wid" id="password" name="password" runat="server" tabindex="1"  10:                                clientidmode="Static" />  11:                            <a href="Account/RecoverPwd.aspx" class="pw">忘记密码</a></li>  12:                        <li class="font12 mar">  13:                            <input name="persistentcookie" id="rpwd" type="checkbox" value="1" runat="server"  14:                                tabindex="1" clientidmode="Static" />  15:                            <label for="rpwd">  16:                                记住登录状态</label>  17:                        </li>  18:                        <li class="mar">  19:                            <input id="login_img" type="image" src="images/login.gif" tabindex="1" onclick="return Login();" />  20:                            <span id="login_tip" style="display: none;">正在系统,请稍候...</span> </li>  21:                    </ul>  22:                    <hr style="height: 2px; width: 80%; border-top: 2px dashed #215FD2;" />  23:                    <div style="font-size: 14px; text-align: center;">  24:                        还不是会员,<a href="Account/Register.aspx">现在注册</a></div>  25:                    </form>  在添加了Action属性后,可以正常显示了,但当访问该网页中带有查询字符串时,因为提交的网址是default.aspx,是没有后面的查询字符串的,会出现问题,如上面的页面为登录页面,如果在web.config中配置了登录url后,在访问需要登录的页面时,会在页面后带有查询字符串的网址,如:http://localhost/CCUINCom/Default.aspx?ReturnUrl=%2fCCUINCom%2fmanagerCom%2fcustomizeCom.aspx。此时,当登录完成后就不能返回原来的页面。
  为了解决这一问题,在页面加载时,指定form的Action属性为请求时的地址,如:


   1:  protected void Page_Load(object sender, EventArgs e)   2:      {   3:          //在只输入网站不输入页面地址时,iis不触发事件,不能正常登录,   4:          //因此,在form中添加了action=default.aspx后,使得因为超时后返回该页面所带的returnUrl参数无效   5:          //因此在页面加载时,得到原始url并将form的action设置成原始地址,以保证正常跳转   6:          Form.Action = Request.RawUrl;   7:          string returnUrl = Request.QueryString["ReturnUrl"];   8:          if (IsPostBack)   9:          {  10:             ... ...  11:          }  12:          else  13:          {  14:              ... ...  15:          }  16:      }  此时,可以正常返回登录前的页面了。为此,又得到了一种Asp.net跨页的方式,就是如上种设置form的Action属性,经过实验,页面提交时会转到相应的页面,但会提示viewState验证错误,设置页面的参数,对视图状态不进行验证就可以了,此时可以通过Request的forms属性来访问值 ,这就和asp环境下的方式有些类似了。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-98126-1-1.html 上篇帖子: php5配置与IIS中isapi筛选器不能加载PHP的解决办法 下篇帖子: vs2008与IIS 7.0使用在vista上时出现的问题及解决方法(Internet Explorer 无法显示该页面)(VS2008: IE Cannot
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表