日期:2014-05-18  浏览次数:20382 次

初学.net,问几个基本问题,请帮我解答下。
1.
如在一个登录界面   Loin.aspx   ,有两个文本框,三个按钮,按钮分别是   登录,清空,关闭
比如   清空   ,在cs文件里,写他的onclick,使得文本框清空,如代码
this.userName.Text= " ";
this.userPwd.Text= " ";
问题一
这样的话,是不是按钮和文本框必须是服务器控件?
问题二
这样作会不会对服务器造成不必要的负担,如果用js做清空或者关闭的代码,效率要更高对吗,至少js不用在服务器上执行?
问题三
如果点登录,我可不可以在Login.aspx.cs里写连接数据库的代码并取得this.userName.Text和this.userPwd.Text的值直接在数据库判断,而不用把form提交成其他页用Request.form[ "userPwd "]等来请求传递来的值在进行判断?
问题四
我发现在aspx中可以直接象asp一样,html和asp混编,在标识符为 <%%> 里可以直接写代码也可以,那么为什么要用cs文件呢,是aspx里写代码有什么局限吗?在cs里写代码的好处在哪?

------解决方案--------------------
问题一
具体情况具体分析,用html控件也可以
问题二
用js做清空或者关闭的代码,效率当然更高
问题三
可以
问题四
aspx中可以引用asp,在标识符为 <%%> 里可以直接写代码
用cs文件的好处太多了,比如更安全等等
------解决方案--------------------
我也是个菜鸟。。。
问题一
这样的话,是不是按钮和文本框必须是服务器控件?

是啊..不是在CS里面点不出来列...HTML控件也要设置成服务器控件...

问题二
这样作会不会对服务器造成不必要的负担,如果用js做清空或者关闭的代码,效率要更高对吗,至少js不用在服务器上执行?

显然JS效率好一点啊!!本地搞定!!


问题三
如果点登录,我可不可以在Login.aspx.cs里写连接数据库的代码并取得this.userName.Text和this.userPwd.Text的值直接在数据库判断,而不用把form提交成其他页用Request.form[ "userPwd "]等来请求传递来的值在进行判断?

有点不明白...你不做AJAX效果、干吗要提交到别的页面呢?就在CS里面写不完了..


问题四
我发现在aspx中可以直接象asp一样,html和asp混编,在标识符为 <%%> 里可以直接写代码也可以,那么为什么要用cs文件呢,是aspx里写代码有什么局限吗?在cs里写代码的好处在哪?

感觉ASP.NET这样的目的就是为了页面代码和功能代码的分离!层次清晰!适合与多层开发!3层架构什么的!提高了代码的重用性....

------解决方案--------------------
vs2003的存在很多安全问题,要技术员自己想办法避免。VS2005直接将安全问题解决掉了!非常省心省事!
------解决方案--------------------
asp思想严重!!
------解决方案--------------------
hengwang007(★★★★★) 回答的已经够简洁了。

关于最后一点,我还有个感觉,就是为了照顾从ASP时代或者其它语言过来的人的习惯,或者编这本书的就是按照以前的习惯在写。

我是坚决不这么用的。自从用了CodeBehind,身轻气爽,决不会回到ASPX页面中写的。何况ASPX页面还有Javascript要写,都写一起,多乱啊。
------解决方案--------------------
asp思想严重!!