07 2013 档案

摘要:SQL Server Profiler用来跟踪应用程序发送到SQL Server中的SQL语句,用于检测性能,查找问题。Entity Framework 也有它的跟踪工具EFProf,用于跟踪Entity Framework发送到SQL Server中的SQL语句。 首先在代码中添加对程序集HibernatingRhinos.Profiler.Appender的引用,并添加如下方法 Hiber... 阅读全文
posted @ 2013-07-26 09:34 信息化建设 阅读(6639) 评论(14) 推荐(6)
摘要:Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项。简洁的语法与.NET Framework 结合,广泛应用于ASP.NET MVC 项目。Razor Pad是一个编辑Razor脚本的工具,脱离于ASP.NET 和Visual Studio。 微软已经有一套模板引擎T4,在设计ASP.NET MVC 3时又设计一套模板引擎Razor,对开发者而言是多一... 阅读全文
posted @ 2013-07-25 09:27 信息化建设 阅读(16264) 评论(4) 推荐(5)
摘要:使用Visual Studio 2012有一段时间了,并不是追赶潮流,而是被逼迫无可奈何。客户要求的ASP.NET MVC 4的项目,要用.NET 4.5来运行。经过一段时间的摸索,得到一点经验和体会。C#之父曾说,抗拒变化是人类的天性。Visual Studio 2012仅仅是在界面上变化就很让人感叹,也只有这样的大公司才有精力和时间去做这样的变更。微软有意推广一项技术,会在他最得意的产品中应用... 阅读全文
posted @ 2013-07-23 19:24 信息化建设 阅读(14719) 评论(9) 推荐(9)
摘要:前一篇文章介绍了应用LLBL Gen生成Entity Framework所需要的类型定义,用一行代码完成数据资料的读取, 《LLBL Gen + Entity Framework 程序设计入门》。如果已经对Entity Framework产生兴趣,则可以借助于这一篇,来学习Entity Framework如何对资料库进行操作。 连接字符串的写法 Database Connection Str... 阅读全文
posted @ 2013-07-23 09:38 信息化建设 阅读(2878) 评论(2) 推荐(0)
摘要:Entity Framework推出有好几年,除了微软的Visual Studio可以做实体框架开发外,第三方的开发工具如LLBL Gen, Devart Entity Developer也可以用来做设计开发。 设计数据库表Configuration,它的SQL定义如下 IF OBJECT_ID ('dbo.Configuration') IS NOT NULL DROP TABLE ... 阅读全文
posted @ 2013-07-22 09:40 信息化建设 阅读(2555) 评论(5) 推荐(1)
摘要:以LLBL Gen作为ORM数据访问框架,生成实体层,然后在实体层中绑定业务逻辑。有以下几个好处: 1 强类型对象,可以编译时发现错误,而不是运行时错误 2 可以借助于反射做扩展,灵活性高。 情境设定 如何让销售单中的客户编号,只能在第一次输入的时候,可以修改,保存后不能修改,如何实现? 最简单的实现方法是,在界面的OnLoad事件中,加上一行代码: txtCustomerNo.R... 阅读全文
posted @ 2013-07-11 09:18 信息化建设 阅读(1865) 评论(2) 推荐(2)
摘要:ERP软件应该实现多国语言功能。一般是英文,简体中文和繁体中文。理论上,实现两种或两种以上的语言就已经实现任意语言,但是从Window的语言和区域选项中可以看到,要完整的实现多国语言,还需要对这些特性进行定制。 从实现方法来上说,有两种方式: 1 只读。语言资源呈现现到界面中,以只读的方式,用户不可修改。或是只能由开发部门修改。 2 可修改。语言资源可以由用户定制修改。 我... 阅读全文
posted @ 2013-07-10 09:27 信息化建设 阅读(4201) 评论(4) 推荐(2)
摘要:许可证编译器 (Lc.exe) 的作用是读取包含授权信息的文本文件,并产生一个可作为资源嵌入到公用语言运行库可执行文件中的 .licenses 文件。 在使用第三方类库时,经常会看到它自带的演示程序中,包含有这样的Demo许可文件 Infragistics.Win.Misc.UltraButton, Infragistics2.Win.Misc.v11.1, Version=11.1.2011... 阅读全文
posted @ 2013-07-09 09:19 信息化建设 阅读(3005) 评论(0) 推荐(4)
摘要:做企业管理软件经常会遇到要把数据导出成EXCEL格式,目前市面上有很多工具类库可以实现此功能。CarlosAg ExcelXmlWriter是其中之一,它绿色小巧,免安装,又源码开放,我在项目中一直以这个类库来实现对EXCEL文件操作。 图形工具 Code Generator 因Excel涉及到的对象模型比较多,初步了解时,需要查找资料才能入门。为此作者设计了一个GUI程序,CarlosAg.Ex... 阅读全文
posted @ 2013-07-08 19:06 信息化建设 阅读(2929) 评论(0) 推荐(0)
摘要:如果你想去除一个程序集的强签名(strong name),目前为止可以有两个途径 1 反编译为IL代码,删除签名部分,再编译为程序集 2 应用Re-Sign程序,直接对一个程序集再签名 生成和读取强命名 先来看,如何生成.NET的签名文件,调用命令SN传入参数。 下面的代码读取该文件,FileStream keyPairFile = File.OpenRead(“key.sn”);thi... 阅读全文
posted @ 2013-07-08 09:23 信息化建设 阅读(5834) 评论(2) 推荐(5)
摘要:经常写博客交流想法,表达观念,但时常也遇到困扰。作者与读者的互动,应该是双向的。经常阅读博客,发现有些文章的作者和读者的互动,感觉是一种美。读者对作者观念的补充,作者对读者反馈内容的再思考,再加工,真让人赏心悦目。以下列举我认为的十种不恰当的互动方式,不涉及具体的作者和读者,请勿对号入座,有则改之,无则加勉。 1 留下邮箱,叫作者发源代码或是要开源 这一条经历的和看到的比较多一点。但凡是优秀... 阅读全文
posted @ 2013-07-06 10:25 信息化建设 阅读(3617) 评论(38) 推荐(42)
摘要:.NET平台的编译器会将高级语言(C#,VB.NET,F#)编译成MSIL(微软中间语言)格式。熟悉MSIL语言,可以读懂一些加密程序混淆过的算法,这些算法几乎不能还原成高级语言,但是可以还原成MSIL语言。也可以知道一些高级语言之外的关于CLR的特性,比如多模块程序集,全局静态方法等等。一些.NET保护加密程序也是运用MSIL平台的特性。 阅读本篇文章,假设您已经对这个语言有基本的了解,我会列... 阅读全文
posted @ 2013-07-05 19:19 信息化建设 阅读(4757) 评论(4) 推荐(5)
摘要:经常遇到一些好的.NET项目开放源代码之后,便很少更新。即使是大名鼎鼎的CodeProject中的文章中的代码项目,遇到问题时,留言或是主动给作者发邮件,都像石沉大海一样,得不到回复或解决,只好自力更生。 Codeplex中的项目,更新的速度就更慢了。从First release算起,三个月之外,就很少有更新了。我指的项目不是指官方的一些项目,驻留在这里。比如SQL Server的Sample ... 阅读全文
posted @ 2013-07-05 09:15 信息化建设 阅读(4542) 评论(11) 推荐(9)
摘要:CLR自带的反射机智和API可以很轻松的读取.NET程序集信息,但是不能对程序集进行修改。CLR提供的是只读的API,但是开源项目Mono.Cecil不仅仅可以读取.NET程序集的元数据,还可以进行修改。1 读取程序集的版本信息CLR定义的对象模型是以程序集为编译和部署单元。一个程序集下面可以有多个模块,模块下面再包含类型,类型中定义方法,属性和事件等。直接传入一个完整的字符串表示的程序集,MONO可以解析它的基本信息:var name = AssemblyNameReference.Parse ("Foo, version=2.0.0.0, culture=fr-FR") 阅读全文
posted @ 2013-07-04 19:22 信息化建设 阅读(6308) 评论(0) 推荐(2)
摘要:首先是一个PPT文档,从宏观层面展示Enterprise Soltion的几个功能特色。 Enterprise Solution解决方案安装与配置 将源代码解决方案和演示程序在电脑中进行配置,作为了解Enterprise Solution框架的起点。 框架开发手册 详细介绍Enterprise So 阅读全文
posted @ 2013-07-04 10:00 信息化建设 阅读(2580) 评论(0) 推荐(1)
摘要:最近阅读了一套ERP开发框架的源代码,对开发框架的理解又深入一层,也为其将知识点运用的如此灵活而自叹不如。 郎咸平教授说,国际金融炒家对国际金融知识的理解与运用程序,是不可想像的。1997年的亚洲金融危机,国际金融炒家对香港的攻击是卖空港币,但是最后却反应到股票市场,惨败。同理,开发高手将系统的知识点,运用的相当灵活,你完全没有想过可以按这种方式做出程序,灵活简便,维护方便。 1 .NET组... 阅读全文
posted @ 2013-07-04 09:19 信息化建设 阅读(5099) 评论(21) 推荐(7)
摘要:整理一下自己经常用到的几个扩展方法,在实际项目中确实好用,节省了不少的工作量。 1 匿名对象转化 在WinForm中,如果涉及较长时间的操作,我们一般会用一个BackgroundWorker来做封装长时间的操作,给它传递一个类型参数。var parm = new { UserId = txtUserId.Text, UserText = txtText.Text, TabIndex = tabCo... 阅读全文
posted @ 2013-07-03 18:57 信息化建设 阅读(5004) 评论(9) 推荐(5)
摘要:关于字符串的研究,目前已经有两篇。 原理篇:字符串混淆技术在.NET程序保护中的应用及如何解密被混淆的字符串 实践篇:字符串反混淆实战 Dotfuscator 4.9 字符串加密技术应对策略 今天来讲第三篇,如何应用上面所学内容,设计一个字符串混淆程序。 先设计一个控制台程序,它是将要被我混淆的程序集文件: public static void Main(){ try ... 阅读全文
posted @ 2013-07-03 09:15 信息化建设 阅读(4161) 评论(6) 推荐(5)
摘要:代码注入在C++时代很流行,主要是对现有的程序做一些修改,以达到预期的目的。一部分的破解程序,注册机也是借助于此方法,让被注入的程序绕过验证,达到破解的目录。在.NET中,借助于Mono.Cecil程序集,注入代码也相当容易。请看下面的代码,将要被注入的程序: using System;namespace Victim{ class Program { static v... 阅读全文
posted @ 2013-07-02 19:10 信息化建设 阅读(3332) 评论(4) 推荐(3)
摘要:因为手头需要使用一个第三方类库,网络上又找不到它的可用的版本,于是只好自己动手。这个类库使用了Dotfuscator 加密,用.NET Reflector加载程序集, 看到的字符串是乱码,如下面的代码例子所示: internal class Program{ // Methods private static void Main(string[] args) { ... 阅读全文
posted @ 2013-07-02 09:19 信息化建设 阅读(10348) 评论(3) 推荐(6)
摘要:Visual Studio提供的Dotfuscator保护程序,可以对用户代码中包含的字符串进行加密。比如下面的例子,为了找到这个程序的注册算法,用.NET Reflector加载程序集后,发现代码中的字符串,都变成这种形式的:Assembly executingAssembly = Assembly.GetExecutingAssembly();ArrayList list = new Arra... 阅读全文
posted @ 2013-07-01 09:28 信息化建设 阅读(4195) 评论(2) 推荐(2)