ASP.NET:代码落后或没有代码落后?
为什么有人不想使用代码隐藏文件,以便服务器端代码与标记分开?这不应该是.NET优于经典ASP的优势之一吗?
就个人而言,我认为将代码与标记混合会使代码更难理解. 我讨厌看到那些< %%> (服务器端块)与标记互相拼接,哎呀.我希望这在ASP.NET中仅用于向后兼容Classic ASP,但我总是看到MS中包含那些黄色括号的示例. 我正在尝试理解一个可供下载的代码示例here,并且为什么我执行代码时出现的任何服务器端断点here都没有中断,即使我看到已经在web.config中设置了.由于我通常使用代码隐藏,我想知道在aspx中是否有一些关于服务器端代码的处理方式有所不同,这阻止了我调试runat = server代码. 所以.我的问题是: 1)为什么有人不想使用代码隐藏文件,以便服务器端代码与标记分开? 2)为什么我可能无法打破服务器端逻辑? 您的见解和意见也欢迎我的任何相关评论. 解决方法
使用< %%>的内联代码功能不仅仅是为了向后兼容,而是.NET的一个功能,可以允许一些(相对!)清晰和直接的解决方案.然而,它经常以不太理想的方式使用.同样,代码隐藏中的代码通常(通常实际上)以不太理想的方式使用,就像web控件一样.
在代码隐藏中使用代码通常不适用于separate concerns,而是在不同于传统asp的地方使用混乱的意大利面条代码. .NET确实允许您拥有组织良好的解决方案,但是由您来实现它.在页面后面的代码中包含代码并不是该旅程中的第一步,只是旅程可以开始的地方. 至于你的事件没有解雇的原因,很可能是: >事件实际上并未触发. (您是否更改了下拉列表中的选定项目,以实际触发该事件?)>您实际上没有连接事件.在该控件的属性窗口中,是否列出了与相关事件对应的事件函数名称? (这是最简单的方法;例如,您也可以使用vb中的句柄键工作)>通常当我的事件没有触发时,因为我做了一些愚蠢的事情,比如没有启动我的代码,或者我的网址指向错误的地方. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 实体框架 – Unity Lifetime Managers和EF Data Context –
- asp.net – 每个会话的NH请求 – “会话已关闭!”
- asp.net-mvc – 如何轻松地将Bootstrap应用于已完成的ASP.n
- asp-classic – If子句未按预期工作
- asp.net – “请求已中止:无法在Braintree中创建SSL / TLS
- asp.net-mvc-3 – 使用EditorFor/TextBoxFor/TextBox助手的
- asp.net-mvc-3 – MVC3 / Razor添加控制器“Get-PrimaryKey
- asp.net-mvc – 为什么HttpContext.Current在asp.net mvc中
- asp.net-mvc-3 – html.TextBoxFor和html.Textbox,POSTing值
- asp.net-mvc – 根据验证程序,远程证书无效.用twitter进行外
- asp.net – 什么可能导致一个服务器上的此错误,但
- asp.net-mvc – 在我自己的OWIN中间件中使用Ninj
- 如何使用MVC5 ASP.NET Identity Framework对Sign
- asp.net-mvc – 带.Net MVC的JQuery UI自动完成:
- Asp.NET MVC视图中的引用
- ASP.NET Core 使用Swagger
- asp.net-mvc-4 – ASP.Net MVC 4和WebSecurity –
- asp.net – 在C#后面的代码中实现javascript确认
- Asp.NET Core+ABP框架+IdentityServer4+MySQL+Ex
- asp.net-mvc-3 – ASP.NET MVC 3:将应用程序移动