随笔分类 -  .net

摘要:往往在实际开发中,经常会用到一些如抓取网站信息之类的的操作,往往大家采用的是用一些正则的方式获取,但是有时候正则是很死板的,我们常常试想能不能使用jquery的选择器,获取符合自己要求的元素,然后进行操作,例如:我想获取一个网页中关于一款产品的链接,并从这些链接中获取相应产品的数据。如果写正则匹配网址也是很纠结的事情。但如果能使用jquery选择器难道href的value,然后在验证就是一件非常愉快的事情了。 首先介绍一些今天用的框架:Jumony,这是一个html解析器。(关于html解析器,顾名思义就是对一段html文本进行解析,解析成可以操作的元素。)当然这并不只是一套html解析... 阅读全文
posted @ 2013-12-23 15:20 沐松 阅读(1070) 评论(0) 推荐(1)
摘要:首先来张图,一张 cpu的简图,仅从个人理解角度理解画的 大体 解释下这张图 这是 一张 i5的简图i5 大家都知道 是双核四线程,(超线程技术)l1,l2,l3是 1,2,3级缓存。 Cpu工作:每次计算任务 cpu 都去找l1,如果l1没有就去找l2,依次查找,然后依次将数据从内存加载l3,l2,l1 然后加载到 寄存器操作。 现在引入 一个问题 a+=1; 怎么执行的 首先 a+=1 是 分成 以下几部执行的内存中找到a在寄存器中 a+1把结果写回内存中 对应的 汇编代码 不写了→_→(我忘了) 问题: 如果 a=0,2个线程 同时执行这端代码,结果是1还是 2呢?看图 ... 阅读全文
posted @ 2013-11-24 20:28 沐松 阅读(438) 评论(1) 推荐(2)
摘要:协变与逆变2013年10月9日19:00:00关于接口的协变与逆变 1 class Program 2 3 { 4 5 static void Main(string[] args) 6 7 { 8 9 10 11 //协变 IDataServices类型对象 变成 IDataServices 12 13 //泛型的子类 变成泛型的 父类 ,但是需要注意2个接口 不存在继承关系 只是编译器 允许这么写 CLR并提供支持,实际上是语法糖 14 15 ... 阅读全文
posted @ 2013-10-09 22:48 沐松 阅读(251) 评论(0) 推荐(0)
摘要:今天闲来无聊研究了下 ActiveX插件开发,以前一直以为很牛逼,然后发现还是比较简单的东西..首先: 在开始前 准备好 VS12开发工具,cabarc.exe 工具(注:这是 用来 将文件打包成cab的工具,cab包ie浏览器才会安装它,提供下载见文章最后)开始:1.新建一个Windows窗体控件库2.新建用户控件3.添加一个接口名为:IObjectSafety(此名固定用法)添加的代码:(代码请勿改动) 1 using System; 2 using System.Runtime.InteropServices; 3 4 namespace MyFirstActiveX 5 { 6 ... 阅读全文
posted @ 2013-09-29 23:54 沐松 阅读(2467) 评论(0) 推荐(0)
摘要:关于浅拷贝和深拷贝的区别就不细说了(请参看下面代码).通常会用到 深拷贝代码 实现 如下: 1 class Program 2 { 3 static void Main(string[] args) 4 { 5 Person p = new Person { Name = new Name { FirstName = "Hua", LastName = "Rufus" }, Sex = Sex.Man }; 6 Person ptemp; 7 //ptemp = p; 普通赋值测试... 阅读全文
posted @ 2013-08-03 20:37 沐松 阅读(319) 评论(0) 推荐(0)
摘要:今天在QQ群里看到一道题目给出四个整数变量,0 list = new List(); 7 for (int i = 1; i ( 18 (x, y) => 19 { 20 if (x.Sum == y.Sum) 21 { 22 return 0; 23 } 24 else if (x.Sum > y.... 阅读全文
posted @ 2013-05-31 20:13 沐松 阅读(1448) 评论(2) 推荐(2)
摘要:项目需求 一个自定义类,根据id 升序。上代码: 1 class Program 2 { 3 static void Main(string[] args) 4 { 5 var sl = GetS(); 6 sl.Sort(new Comparison((x, y) => 7 { 8 return x.ComString(y); //使用扩展方法 9 }10 ));11 ... 阅读全文
posted @ 2013-05-27 16:20 沐松 阅读(321) 评论(0) 推荐(0)
摘要:仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)这个题,恩咋一看很简单,但是考虑到 N 不固定就蛋疼。我的主要思路 比如说 153 ,递归枚举 三位数 1 3 5,然后 对 1^3 ,3^3 ,5^3 (我提前处理了0-9的N次幂 )三者 加和 处理 得到 153,然后判断 153 包含的元素 和 135 是否相同,如果相同 就是水仙花数。(其中我在递归里 加入了剪枝,防止其重复数据,例如 135 和153 就是 重复了,其中包含1个1,1个3,1个5 →_→ 这段代码 写了一晚上 好累)下面是 我的代 阅读全文
posted @ 2013-05-22 22:24 沐松 阅读(1457) 评论(2) 推荐(2)
摘要:CodeSnippet功能中文翻译为代码段。是VS中一个非常好用的功能,大家都知道,在编译器中,输入for按2下Tab,可以快速生成一个for代码段例如:你可以继续按下Tab更换要重写的部分 比如说这个把i改为j,把Length换成XX.Count(自己测试下吧)而这个for代码段就是VS内置的代码段,查看代码段可以通过 工具-代码段管理器 来查看这些CodeSnippet。可以手动,添加自定义的代码段。例如 在常用WPF的MVVMLight的我,经常要写一些通知属性。这是 我按照自己习惯写的代码段模板,然后快捷键是propn。Ok介绍完代码段,下面讲解下自定义代码段的使用。首先找到代码段的位 阅读全文
posted @ 2013-05-20 08:23 沐松 阅读(324) 评论(0) 推荐(0)
摘要:原文地址:http://www.cnblogs.com/mgen/archive/2011/05/06/2038339.html该文作者为:Mgen 90后大牛MVP(我也是90后为啥差这么多呢+_+)写此目的: 由于我基础本较差,于是在项目遇到很多问题,所以回过头来学习基础,(由于公司程序就是我一个,所以只能到处找文章自己钻研——|||) ,偶然遇到Mgen大牛的blog,发现Megn大牛也是专注于C# C/S开发,而且技术水平很高(感觉找到偶像了— —||)。于是下定决心,开始开始看大牛的 文章。写此文留给自己正文:(原文中内容不再这里阐述) 1:Object.Equals 此方法作用 . 阅读全文
posted @ 2013-04-14 20:34 沐松 阅读(492) 评论(3) 推荐(1)
摘要:在机器上安装 2.0 3.0 3.5 4.0 4.5等多版本的.net环境下,.net程序运行时,会自动寻找最高版本执行,有时候您的机器安装4.0版本.net,同时安装3.5版本的.net环境,经常发生3.5的程序,无法启动,因为3.5和4.0版本下还是有区别的~解决方案:给程序添加 App.config文件:(注:不用直接在项目中添加。可以给exe添加同名的config文件 就好。 例如 1.exe ,添加 1.exe.config文件就好)代码如下:(注:2.0 3.0 3.5 使用此配置) 3.5Client版本下配置: 4.0下使用此配置: 4... 阅读全文
posted @ 2013-04-11 10:28 沐松 阅读(2033) 评论(0) 推荐(0)
摘要:MEF是4.0的新特性 ,建立项目 请用4.0以上框架1、新建 一个 类库项目 名为Itest,删除其中Class1.cs 添加 一个接口文件,命名为 ItestServicenamespace ITest{ public interface ITestService { void test(); }}2、然后 建立控制台项目(主项目) 名为MEFTest项目 项目中添加引用 Itest与 System.ComponentModel.Composition.dll在Program.cs 中写class Program { [Import(typ... 阅读全文
posted @ 2013-04-08 09:27 沐松 阅读(593) 评论(0) 推荐(0)