首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

【误人子弟】《ASP.NET常用语句1-20条,(很实用的) 》解决办法

2012-01-13 
【误人子弟】《ASP.NET常用语句1--20条,(很实用的) 》1.//弹出对话框.点击转向指定页面Response.Write(scrip

【误人子弟】《ASP.NET常用语句1--20条,(很实用的) 》
1.//弹出对话框.点击转向指定页面
Response.Write("<script>window.alert('该会员没有提交申请,请重新提交!')</script>");
Response.Write("<script>window.location='http://www.51aspx.com/bizpulic/upmeb.aspx'</script>");

2.//弹出对话框
Response.Write("<script language='javascript'>alert('产品添加成功!')

每次看到这样的代码就想踢人,幸好你不是我的手下。

4.//绑定下拉列表框datalist
System.Data.DataView dv=conn.Exec_ex("select -1 as code,'请选择经营模式' as content from dealin union select code,content from dealin");
this.dealincode.DataSource=dv;
this.dealincode.DataTextField="content";
this.dealincode.DataValueField="code";  
this.dealincode.DataBind();
this.dealincode.Items.FindByValue(dv[0]["dealincode"].ToString()).Selected=true;

最后一行使用下面的代码是不是更好:
dealincode.SelectedValue = dv[0]["dealincode"].ToString();

5.//时间去秒显示
<%# System.DateTime.Parse(DataBinder.Eval(Container.DataItem,"begtime").ToString()).ToShortDateString()%>

DateTime.ToShortDateString() 能不能去秒大家回去试验一下
如果不能,恭喜你,你不会再相信这样的鬼代码。如果能,打开Windows的控制面板,找到“语言和文化”选项,试着去修改短日期显示格式一项
再回来执行代码,看看结果怎么样?是不是很神奇,是不是觉得奇怪?
去了解一下线程的语言文化吧。
用下面的代码才能去秒显示时间:
DateTime.ToString("yyyy-M-d h:m")

10.//提取动态网页内容
Uri uri = new Uri("http://www.51aspx.com/");
  WebRequest req = WebRequest.Create(uri);
  WebResponse resp = req.GetResponse();
  Stream str = resp.GetResponseStream();
  StreamReader sr = new StreamReader(str,System.Text.Encoding.Default);
  string t = sr.ReadToEnd();
  this.Response.Write(t.ToString());

OK,代码看上去很正常,执行结果也如预期。一切都很“完美”。
但是,Stream对象是不是应该在执行完之后或发生异常的情况下关闭?
另外,为什么要 string.ToString()
这样的代码有何意义?
为什么要使用默认的编码去Request?在不同的情况下会带来什么后果?
难怪大部分的所谓C#程序员如此廉价。

11.//获取" . "后面的字符
i.ToString().Trim().Substring(i.ToString().Trim().LastIndexOf(".")+1).ToLower().Trim()

不知道大家看到这样的代码是何感想
这里面产生了多少个string对象(垃圾对象),代码有多大的可读性。
既然需要取 . 后面的字符,这样随意的使用Trim(),使用 ToLower() 是那个需求文档给你的权利?
还有,万一 string.LastIndexOf(string) 等于 -1 怎么办?
下面的代码是不是更容易接受:
string temp = i.ToString();
int dotIndex = temp.LastIndexOf(".");
return temp.SubString(dotIndex+1);

12.为按钮添加对话框

Button1.Attributes.Add("onclick","return confirm('确认?')");
button.attributes.add("onclick","if(confirm('are you sure...?')){return true;}else{return false;}")

if(confirm('are you sure...?')){return true;}else{return false;}
换成
return confirm('Are you sure?')
是不是更好?




欢迎拍砖,来者不拒。谢绝人身攻击。

[解决办法]
支持lz
[解决办法]
顶。。。。LZ在做反面教材
[解决办法]
哦,呵呵
[解决办法]
学习。up
[解决办法]
相当相当支持楼主这种总结。继续内容更丰富些。

哪天集中到blog上吧~
[解决办法]
ASP.NET常用语句1--20条
那来的?
[解决办法]
5.//时间去秒显示
<%# System.DateTime.Parse(DataBinder.Eval(Container.DataItem,"begtime").ToString()).ToShortDateString()%> 

直接在SQL中格式化好不是更好!
[解决办法]
继续。。。我也经常看到有人这样子写的
------解决方案--------------------


高手
[解决办法]
。。。不错
[解决办法]
大部分说的很对,就第二个你说的是错误的
DropDownList的SelectedValue是只读的,你不能用它来指定DropDownList的选中项
用FindByValue没有错,但是要先判断一下是否为null:

C# code
ListItem li = this.dealincode.Items.FindByValue(dv[0]["dealincode"].ToString());if(li != null)    li.Selected = true;
[解决办法]
没看出有什么特别的地方!
[解决办法]
顶上去啦
[解决办法]
学习了

[解决办法]
ding
[解决办法]
selectedValue不是只读的!
[解决办法]
呵呵,看过“ASP.NET常用语句1--20条,(很实用的) ”这个帖子,跳着看了几句,就没看了,那些代码真的写得很糟糕,下面的回帖倒注意看了一下,竟然还有不少人叫好的。
楼主的精神可嘉,路见不平一声吼,颇有些侠义之风:)
[解决办法]
探讨
大部分说的很对,就第二个你说的是错误的
DropDownList的SelectedValue是只读的,你不能用它来指定DropDownList的选中项
用FindByValue没有错,但是要先判断一下是否为null:

C# code
ListItem li = this.dealincode.Items.FindByValue(dv[0]["dealincode"].ToString());
if(li != null)
li.Selected = true;

[解决办法]
此贴强大在于回复
[解决办法]
探讨
TO: ojlovecd

下面是ListControl.SelectedValue的原型:
C# code////Summary://Gets the value of the selected item in the list control, or selects the item//in the list control that contains the specified value.////Returns://The value of the selected item in the list control. The default is an empty//string ("").[Browsable(false)]
[DesignerSerializationVisibility(0)]
[Themeable(fa…

[解决办法]
探讨
大部分说的很对,就第二个你说的是错误的
DropDownList的SelectedValue是只读的,你不能用它来指定DropDownList的选中项
用FindByValue没有错,但是要先判断一下是否为null:
C# codeListItem li=this.dealincode.Items.FindByValue(dv[0]["dealincode"].ToString());if(li!=null)
li.Selected=true;

[解决办法]
hoho,马虎咯
[解决办法]
精益求精的精神还是不错
[解决办法]
偶,貌似可以看下哈
[解决办法]
顶下你
!!你做出了很大的杰出贡献!!!
[解决办法]
我也来顶下
[解决办法]
學習
[解决办法]
感谢楼主的分享
[解决办法]
lz总结的不错!!

To ojlovecd :

知错就改就是好同志!!哈哈

主要是好多人看见个东西就开始转贴,搞得大家尤其一些新学者都认为这是高人写的,就开始模仿了!

网上搜个东西,很多都是一个版本!!

看来还是MSDN值得信赖阿
------解决方案--------------------


if(confirm('are you sure...?'))
{return true;
xx.click()
}
else
{return false;} 

如果要根据确定和取消执行不同的button.click 就要用到以上代码了。有利于分离js代码。

return confirm('Are you sure?') 短一点可以写在button上,如果很长或者很多button调用呢?




[解决办法]
哦也
[解决办法]
呃~
[解决办法]
楼主追根问底精神赞!网上流传的千篇一律,错误也千篇一律,比如第一条代码,误导太多新手了。
[解决办法]
支持
[解决办法]
学习了
[解决办法]
up!
[解决办法]
好帖子,谢谢
[解决办法]
那个第5条,楼主是不是说"区域和语言选项"里改,但短日期格式就那么几种,怎么改能让短日期格式显示分秒?
[解决办法]
google了一下,上面这几条都是被当作经验共享的,打滚ing......
[解决办法]

引用楼主 wfyfngu 的帖子:
1.//弹出对话框.点击转向指定页面
Response.Write(" <script>window.alert('该会员没有提交申请,请重新提交!') </script>");
Response.Write(" <script>window.location='http://www.51aspx.com/bizpulic/upmeb.aspx' </script>");

2.//弹出对话框
Response.Write(" <script language='javascript'>alert('产品添加成功!')

每次看到这样的代码就想踢人,幸好你不是我的手下。



[解决办法]
探讨
引用楼主 wfyfngu 的帖子:
1.//弹出对话框.点击转向指定页面
Response.Write(" <script>window.alert('该会员没有提交申请,请重新提交!') </script>");
Response.Write(" <script>window.location='http://www.51aspx.com/bizpulic/upmeb.aspx' </script>");

2.//弹出对话框
Response.Write(" <script language='javascript'>alert('产品添加成功!')

每次看到这样的代码就想踢人,幸好你不是我的手下。

… …
大侠,这个你们是怎么实现的啊?

[解决办法]
ls莫怪啊,你提出来的应该是新手写的代码吧,我看了感受和你一样,
但是新手就是新手,写代码是规规矩矩的,呵呵

像这样的代码:
if(a==1){method(true);}
else{method(false);}
看起来很简洁,一看就知道不是老手

method(a==1)不是可以吗?
[解决办法]
引用楼主 wfyfngu 的帖子:
11.//获取" . "后面的字符
i.ToString().Trim().Substring(i.ToString().Trim().LastIndexOf(".")+1).ToLower().Trim()

不知道大家看到这样的代码是何感想
这里面产生了多少个string对象(垃圾对象),代码有多大的可读性。
既然需要取 . 后面的字符,这样随意的使用Trim(),使用 ToLower() 是那个需求文档给你的权利?
还有,万一 string.LastIndexOf(string) 等于 -1 怎么办?
下面的代码是不是更容易接受:
string temp = i.ToString();
int dotIndex = temp.LastIndexOf(".");
return temp.SubString(dotIndex+1);


[解决办法]
顶你了
[解决办法]
烂泥扶上墙
[解决办法]
这贴太好了,要保存了.谢了.
[解决办法]
反面教材大家学习了。。。
这种东西多总结总是没坏处的
------解决方案--------------------


只想说一下第二个

楼主可以反编译看一下SelectedValue这个属性

其中的 set 实现还是通过 ListItem的FindByValue来实现的,

别人怎么用不知道,至少我参与的项目全部用FindByValue来实现选项功能。
[解决办法]
好东东,谢谢
[解决办法]
牛B,这样说起来更容易懂
[解决办法]
DateTime.ToString("yyyy-M-d h:m") 

请注意h的大小写
[解决办法]
对新手来说很好...做的多了就按楼主的来了..
[解决办法]
支持 !~ 学习·
[解决办法]
UP 学习
[解决办法]
lz 在哪搜集的代码,真强悍
[解决办法]
代码规范性了.......
呵呵还是多看看好的开源项目,从中多学习.......
[解决办法]
Mark!学习!
[解决办法]
引用:
大部分说的很对,就第二个你说的是错误的 
DropDownList的SelectedValue是只读的,你不能用它来指定DropDownList的选中项 
用FindByValue没有错,但是要先判断一下是否为null: 

[解决办法]
小样,我整死你!! 学习了啊
[解决办法]
还行,欢迎继续总结~
[解决办法]
学习。
[解决办法]
so-so了
[解决办法]
楼主说的有道理,写代码可以参考,但是不能抄写,比较反感的是,代码拷过来,里面都不知所谓的做法.
[解决办法]
代码每人有每人 书写方式和思路。总之看了楼主的评语很有感触,看来以后写代码也要注意了,谢谢lz
[解决办法]

引用楼主 wfyfngu 的帖子:
1.//弹出对话框.点击转向指定页面
Response.Write(" <script>window.alert('该会员没有提交申请,请重新提交!');window.location='http://www.51aspx.com/bizpulic/upmeb.aspx'</script>");

[解决办法]
mark
[解决办法]
up一下哈
[解决办法]
业?东
[解决办法]
看我手下写的去秒时间,雷不死你才怪!
String DATE = DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-" + DateTime.Now.Day.ToString() + " " + DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString();
[解决办法]
探讨
引用楼主 wfyfngu 的帖子:
1.//弹出对话框.点击转向指定页面
Response.Write(" <script>window.alert('该会员没有提交申请,请重新提交!');window.location='http://www.51aspx.com/bizpulic/upmeb.aspx' </script>");

要这样写的吧?

[解决办法]
收集起来 没事看看 多多有益
[解决办法]
顶下
------解决方案--------------------


up
[解决办法]
挺好的,学习学习。
[解决办法]
up
[解决办法]
顶下
[解决办法]
偷工减料,只有七条,鉴定完毕。
[解决办法]
感觉挺好的啊
[解决办法]
接分
[解决办法]
总结了下 
问题主要在于
1、代码的效果不明确 比如第一条
2、编写代码不够严谨和细心 比如 2 10
3、对控件的属性和方法不够清楚,往往控件有很好的方法或属性却不知道用
4、代码编写习惯恶劣 导致出现超长代码现象

到现在我依然感觉到林锐博士的那篇文章对我的影响深远啊~
[解决办法]
顶下,接分
[解决办法]
回帖是一种美德!每天回帖即可获得 10 分可用分!
[解决办法]
老实讲用第一种输出脚本方式的人也很多。我想有些人是习惯于旧的写作风格吧。
也不是说是一种能力怎么样问题。
Response.write()不在ajax应用就比较没事,都可正常使用。
Page.RegisterStartupScript也是一种更规范的方法。
[解决办法]

探讨
ls莫怪啊,你提出来的应该是新手写的代码吧,我看了感受和你一样,
但是新手就是新手,写代码是规规矩矩的,呵呵

像这样的代码:
if(a==1){method(true);}
else{method(false);}
看起来很简洁,一看就知道不是老手

method(a==1)不是可以吗?

[解决办法]
你还真是来 误人子弟的。每一条都不是好东西。



舞蝶飞数码创意

.net开发的图像处理软件。
图片合成flash
图片合成ppt
图片合成avi视频
免费照片边框
[解决办法]
哦,实用
[解决办法]
mark
[解决办法]
收集了!
[解决办法]
探讨
老实讲用第一种输出脚本方式的人也很多。我想有些人是习惯于旧的写作风格吧。
也不是说是一种能力怎么样问题。
Response.write()不在ajax应用就比较没事,都可正常使用。
Page.RegisterStartupScript也是一种更规范的方法。

[解决办法]
来过
[解决办法]
顶一下
[解决办法]
学习
[解决办法]
頂死你??
[解决办法]
接分來了
[解决办法]
接分來了
[解决办法]
up
[解决办法]

[解决办法]
不错不错啊!!!

[解决办法]
收藏,学习

热点排行