AhDung

/*追求代码质量的野生码农*/

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 ··· 6 7 8 9 10 11 下一页

2013年12月26日

摘要: SQL中有LTRIM和RTRIM这两个函数分别用于去除字符串的首、尾空格,缺乏常见的能同时去除首尾的TRIM函数,另外,这俩函数都只对【空格】有效,所以如果首尾是制表符、换行符等等【空白】,它们是不处理的~起码到sql 2k8 r2仍然如此。鉴于此,我写了个靠谱的TRIM函数,上代码:/*---------------------函数:去除头尾空白v0.01Author:AhDungUpdate:201311301716Rem:由于LEN不统计尾随空格,所以做特别处理---------------------*/ALTER FUNCTION dbo.Trim(@s VARCHAR(7999)) 阅读全文
posted @ 2013-12-26 15:18 ahdung 阅读(1604) 评论(0) 推荐(0) 编辑

2013年8月9日

摘要: 我时不时会遭遇这个操蛋问题,今天得闲研究了一下,解决如下:A、将窗体FormBorderStyle属性改为Fixed系,当然这会导致用户不能拖拉窗口大小,所以你可能需要B计划↓B、确保在【VS】中的【窗体】的Size.Width >= MinimumSize.Width + 8。如图:是的,只有下面大过上面至少8个像素,才是理想效果,至于为什么,没深究,大概可能跟NT6的Aero界面,边框大于XP有关。 阅读全文
posted @ 2013-08-09 18:24 ahdung 阅读(1143) 评论(2) 推荐(0) 编辑

2013年7月27日

摘要: 这条语句:b ? "aaa" : "bbb" + "ccc";会解释为:b ? "aaa" : ("bbb" + "ccc");而不是:(b ? "aaa" : "bbb") + "ccc";所以喜欢用?:句式拼字串的猿友们得注意这个规则。详情参见:http://msdn.microsoft.com/zh-cn/library/ty67wk28(v=vs.90).aspx 阅读全文
posted @ 2013-07-27 14:53 ahdung 阅读(886) 评论(0) 推荐(0) 编辑

2013年7月26日

摘要: 这鸟属性把我害苦过,特此敬告一下大家。具体表现在:获取时:在DateTimePicker.ValueChanged事件中,获取到的Text有可能是string.Empty!!!,特别当ValueChanged事件是在构造函数或Load、Shown等启动事件中触发时,得到string.Empty的几率增大;赋值时:有可能触发不了TextChanged事件(该事件默认不显示在设计器中,但的确是存在的);可能的原因:先看Value属性的setter源码:set{ bool flag = !DateTime.Equals(this.Value, value); if (!this.user... 阅读全文
posted @ 2013-07-26 16:46 ahdung 阅读(2015) 评论(5) 推荐(2) 编辑

2013年7月15日

摘要: 有个c#程序在某台电脑上,执行某个操作时,总是会报如图错误:度娘一番,发现市面上常见的原因是配置文件中的特定节点的位置不对,或者配置文件损坏等等,而这个程序根本没有使用内置的配置文件方案,而是用的ini,所以不适用我的问题。由于这个程序不是我的,所以首先reflator出源码(c#这点让我纠结,一方面怕自己的程序被人反,另一方面又得益于此~可以反别人的,NND),调试追踪之下,发现居然是WebRequest.Create()引发的异常,这方法多数会因为传入的uri字串不合法而引发格式错误的异常,这次能引发上述错误还是头一次见(我想Create方法内部也是由其它类引发的,但没深究),anyway 阅读全文
posted @ 2013-07-15 16:30 ahdung 阅读(1899) 评论(0) 推荐(0) 编辑

2013年7月12日

摘要: Update:201307180945今天这鸟问题又找上我了,照之前的方法做后没解决,我又做了些尝试,整个流程如下:1、插上U盘,发现问题2、以devmgr_show_nonpresent_devices=1模式启动【设备管理器】,并勾选【查看\显示隐藏的设备】3、【便携设备】中卸载可疑项目。拿不准就全卸4、在diskmgmt.msc中更改U盘的盘符5、【磁盘驱动器】中卸载该U盘6、重启,好了7、WCNNNDSPWT!============原文==================标题有点怪,原因是我不都不知道该怎样概括这个鸟问题,所以尽可能列出一些主要现象,希望有需要的童鞋搜到。但比标题更怪 阅读全文
posted @ 2013-07-12 12:06 ahdung 阅读(13233) 评论(4) 推荐(0) 编辑

2013年6月26日

摘要: 经测这俩方法会锁住文件,导致程序运行期间无法对load过的程序集文件进行更名/删除/覆盖等等操作,考虑用Assembly.Load()文件字节组替代:Assembly.Load(File.ReadAllBytes(@"c:\a.exe"));注意Assembly.Load()的其它重载方法也可能会锁住文件~具体没尝试,可以确定的是Load文件字节组的方法不会,我猜是因为Load的是文件被读入到内存中的字节组,而不是处于文件系统上的文件本身,所以不会锁住文件~猜想而已,没深究。 阅读全文
posted @ 2013-06-26 17:35 ahdung 阅读(607) 评论(0) 推荐(0) 编辑

2013年6月11日

摘要: .net中的许多类都提供了Close()和Dispose()方法,一直以来我都以为它俩是一回事,是完全等价的,在任何地方,用其一即可,这一意识源于《NET设计规范:约定、惯用法与模式》一书中,P239和P240关于这俩方法的设计建议。按书中的字面理解,Close就应该设计为与Dispose一样的功能,是为了照顾自然语言的一种考量,的确对于有些类,说Close比说Dispose更符合用户的理解(如关闭连接、关闭流),所以这让我觉得Close就是作为Dispose的另一种使用渠道而存在,本来只需一个Dispose就够了,事实上我也没有因为随意使用它俩而造成过任何问题,所以一直以来没深究。可是今天在 阅读全文
posted @ 2013-06-11 15:49 ahdung 阅读(4310) 评论(34) 推荐(7) 编辑

2013年6月7日

摘要: .Net本身没有封装对快捷方式的操作类,所以要在C#中操作快捷方式,需要借助“外力”。市面上常见的方法是通过Windows Script Host Object Model这个COM组件来完成。这种方法的缺憾是你的程序必须带上Interop.IWshRuntimeLibrary.dll这个文件(不过也许可以把这个dll并入exe中再动态加载什么的)。Anyway~今天说的是另一个途径——WMI(Windows Management Instrumentation),这个东东我了解不深,只知道很强大,几乎涉及win系统软硬件资源的方方面面,使用一种叫WQL的查询语言(SQL它妹)获取资源信息,我 阅读全文
posted @ 2013-06-07 13:40 ahdung 阅读(1619) 评论(1) 推荐(1) 编辑

2013年5月27日

摘要: 这两对属性光从MSDN上看不出什么区别,在到底选用其中哪个属性时给我造成过困扰,后来冥冥中觉得它们之间可能有关联,遂决定实验一下:果然,它们之间内部是私通的,赋值其中一个,另一个会跟着改变。通过反编,发现SqlDbType和DbType是通过一个叫MetaType的类实现的私通(这个类是internal的,所以外部不能访问),而SqlValue和Value则是通过SqlParameter类中的一个私有字段_value实现私通,具体此处不详谈。总之知道这两对基友有联动就行了,以后不用再纠结用哪一个。PS:其实MSDN中有提到SqlDbType和DbType之间是有联动的,参看http://msd 阅读全文
posted @ 2013-05-27 16:47 ahdung 阅读(952) 评论(3) 推荐(0) 编辑

上一页 1 ··· 6 7 8 9 10 11 下一页