如何创建一个状态栏扩展(火狐插件扩展开发教程)
摘要:黄聪:一、如何创建一个状态栏扩展(火狐插件扩展开发教程)因为项目的需要,一些功能需要在火狐上面实现,一点也不了解火狐插件的开发,网上的中文资料也少得可怜,没办法,只好自己研究一下英文文档,慢慢开发了,在这里备份一下。学编程,当然是从Hellow,world开始啦。那么我们看看火狐插件的Hellow,world是怎么做的吧一、创建目录随便在一个文件夹里面,新建一个文件夹,名字随意,最好以自己的插件名称命名。我这里做演示,就命名为test在test文件夹下面创建一个文件夹,命名chrome。在test文件夹下面创建两个文件,分别为install.rdf、chrome.manifest在chrome
阅读全文
使用 ODP.NET 访问 Oracle(.net如何访问Oracle)详解
摘要:使用 ODP.NET 访问 Oracle(.net如何访问Oracle)详解1,什么是ODF .NE,?就是Oracle 为 .NET (ODP.NET) 专门编写了 Oracle Data Provider,一个用于 Microsoft .NET 环境下的 Oracle 数据访问 API 。详细解说http://www.oracle.com/technetwork/cn/testcontent/o23odp-084525-zhs.html对于官方的代码,已不存在了!ODP.NET你不需要安装Oracle,不需要配置oracle.key文件,不需要配置TnsNames.Ora文件 不需要配置环
阅读全文
.NET PDB文件到底是什么?
摘要:.NET PDB文件到底是什么?PDB全称Program Database,不知道中文翻译叫什么。相信使用过VS的人对于这个拓展名的文件不会陌生,这个文件主要会存储对应模块(dll或者exe)内部的所有符号,以及符号对应的地址、文件名和行号。这个文件会在我们调试的时候被使用到,这个东西可以理解为调试的时候应用程序和源文件之间的一个桥梁。正是归功于这个文件,我们才能在debug的时候看到程序当前执行相对应的代码和监视到一些变量。PDB文件什么时候产生?PDB文件是在我们编译工程的时候产生的,它是和对应的模块(exe或dll)一起生成出来的。我们一般可能不会意识到PDB文件的重要性,因为如果只是我
阅读全文
自定义系统必备
摘要:自定义系统必备之前收到一个任务,制作安装包,要求把必备的一些必备的组件如.NET Framework这些玩意用一键安装的形式安装上去,SQL Server是必备的其中之一。可是在系统必备处勾选了SQL Server 2005 Express SP2(x86),在生成的时候报错了: 系统必备组件的安装位置未设置为“组件供应商的网站”,并且无法在磁盘上找到项“SQL Server 2005 Express Edition SP2 (x86)”中的文件“SqlExpress\sqlexpr32.exe”。有关详细信息,请参见帮助。 可是我谷歌了也谷不出办法。安装了SQL Server 2005 ..
阅读全文
让ComboBox多列显示 (提供源码下载)
摘要:让ComboBox多列显示 (提供源码下载)前言高考结束了,马上又将会有这么一群孩子,迫不及待的扔下书包,去聚餐,通宵上网,旅行,KTV,闲逛,狂欢……认为自己终于解放了……殊不知,你们离开的,就是天堂。 --致 即将步入社会的孩纸们 缘由最近在维护一个winform项目,公司购买的是DevExpress控件(请问怎么联系DevExpress工作人员? 我想询问下,广告费是怎么给的。:p),经过公司大牛们对DevExpress控件疯狂的重写、封装、加密、混淆...等一系列的操作,制作了一套 安全+实用 、基于DevExpress控件又高于...
阅读全文
.NET:如何应对边界异常?
摘要:.NET:如何应对边界异常?背景为什么语言引入了异常一直没有思考过这个问题,但是异常确实让我的编程生活更快乐,今天早上似乎找到了这个问题的答案:exception之于call stack就像break和continue之于while或for、就像return之于method,总结为一句话:异常只是一种返回机制。为什么异常让程序更简洁代码里只有正常的处理逻辑。 1 /// <summary> 2 /// 创建。 3 /// </summary> 4 public ActionResult Create(TAggregateRoot ...
阅读全文
模板引擎开发(一)
摘要:模板引擎开发(一)我自己写了一套建站系统,关于为什么我要自己写一套建站系统,而不是用网上开源的(将来我的也会开源),个人原由很多人都问过我,当然是有原因的,回头再作解释。今天就说说建站系统中的模板引擎的开发。建站系统是基于.net的,为了方便使用,我也编写了模版处理的功能,当然也需要通过一些标签化语言将模板生成静态网页。我采用了类似于织梦的语言标签,当然也有自己的特色,真正实现功能时,与织梦已经有了很大差别。我大致把实现的思路给大家讲解一下,今天写头一篇,先介绍一下我的模板标签,后续逐步讲解如何实现其功能的。标签分为三大类:值标签、组件标签、自定义标签一、 值标签没有任何属性,可以出现在HTM
阅读全文
C#中的索引器的简单理解和用法
摘要:C#中的索引器的简单理解和用法索引器是一种特殊的类成员,它能够让对象以类似数组的方式来存取,使程序看起来更为直观,更容易编写。1、索引器的定义C#中的类成员可以是任意类型,包括数组和集合。当一个类包含了数组和集合成员时,索引器将大大简化对数组或集合成员的存取操作。定义索引器的方式与定义属性有些类似,其一般形式如下:[修饰符]数据类型 this[索引类型 index]{ get{//获得属性的代码} set{//设置属性的代码}}修饰符包括public,protected,private,internal,new,virtual,sealed,override, abstract,extern.
阅读全文
全站式代码生成器示例
摘要:全站式代码生成器示例背景一直在做企业应用,也一直在使用代码生成器,代码生成器分两个维度,一个维度是”主动或被动“,另外一个维度是”运行时或编译时“,这两种维度会有四种组合,每个组合都有其应用的场景,今天我就介绍一下Happy是如何使用代码生成器的。概念介绍主动:可以生成多次,会”主动“的合并生成代码和用户自定义代码,C#的部分类和ExtJs的扩展类就是,通过一些文本合并工具也是可以实现的。被动:不可以生成多次,每次生成都会覆盖用户自定义的代码。运行时:运行时的代码生成,也叫元编程,动态语言几乎都支持,静态语言可以使用动态编译。编译时:编译时的代码生成,是狭义的代码生成器的代名词。还有一点需要说
阅读全文
C# 标签的添加和删除(选择标签加样式)
摘要:C# 标签的添加和删除(选择标签加样式)公司一个新项目中,有个功能很吸引人.. 在很多网站上也很常见,虽然标签是用repeater动态绑定的,可以用到OnItemCommand来做,但是后台这么做很是复杂而且在选取标签的时候会刷新页面,这个不可取.在网上貌似也没相关的资料,这里我用JS做了这个功能,现在拿出来给大家分享下. 也希望大家能赞下我,多关注下我~再次点击 Darren标签的时候,图如下这里绑定的标签,我用到一个随机颜色方法,JS我写的很全面,点击下面的标签上面文本框添加这个标签的值,并且标签上加样式,当再次添加这个标签的时候,这个标签样式取消,文本框中值去除,因为项目策划中,需要标签
阅读全文
编写更好的C#代码
摘要:编写更好的C#代码引言开发人员总是喜欢就编码规范进行争论,但更重要的是如何能够在项目中自始至终地遵循编码规范,以保证项目代码的一致性。并且团队中的所有人都需要明确编码规范所起到的作用。在这篇文章中,我会介绍一些在我多年的从业过程中所学习和总结的一些较好的实践。举例为先我们先来看一个 FizzBuzz 示例。FizzBuzz 要求编写一个程序,遍历从 1 到 100 的数字。其中如果某数字是 3 的倍数,则程序输出 “Fizz”。如果某数字是 5 的倍数,则输出 “Buzz”。如果某数字即是 3 的倍数也是 5 的倍数,则输出 “FizzBuzz”。如果数字既不是 3 的倍数也不是 5 的倍数,
阅读全文
C#如何实现图片查看器
摘要:C#如何实现图片查看器本专题概要一、引言二、实现思路三、实现效果四、小结一、引言因为最近在MSDN中的论坛和CSDN论坛都看到有些朋友问到如何用C#实现一个像Windows自带的图片查看器的功能等类似的问题(当然还有如何如何旋转图片的,如何通过按钮来变换图片的功能等),所以为了帮助大家更好地解决类似的这样的问题,所以这篇文章将简单介绍下如何使用C#来实现一个图片查看器的功能的,该工具保存的功能有:可以通过“上一张” “下一张”这样的按钮来轮换浏览图片实现对图片的旋转实现对旋转后图片的保存功能。本程序不仅提供旋转90/180/270这样的实现,同时提供一个方法来完成旋转任意角度的实现该程序未实现
阅读全文
让.NET Excel导出将简单进行到底
摘要:让.NET Excel导出将简单进行到底MyNPOI是我花了5个下班的晚上写的,但还有很多不完善的地方。我特将我辛辛苦苦写的源码奉上,希望大家能将它补充,在未来能够分享。一直秉着技术应该分享出去,所以如果你在MyNPOI源码的基础上进行的任何修改如果进行了商业交易,则违反了MyNPOI的分享原则,我有权进行追究。MyNPOI在修改源码时候,必须加上我的博客园昵称 AaronYang,表示对我的支持,谢谢大家的合作。MyNPOI的版权和NPOI一致,再次声明。目录 (Catalog)一、简介二、更新说明三、用法 (一)下载MyNPOI.dll (二)DEMO下载 :卷一 卷二 ...
阅读全文
所有的分页查询一览及数据导出(easyui + knouckoutjs + mvc4.0)
摘要:所有的分页查询一览及数据导出(easyui + knouckoutjs + mvc4.0)前言大家看标题就明白了我想写什么了,在做企业信息化系统中可能大家写的最多的一种页面就是查询页面了。其实每个查询页面,除了条件不太一样,数据不太一样,其它的其实都差不多。所以我就想提取一些共通的东西出来,再写查询时只要引入我共通的东西,再加上极少的代码就能完成。我个人比较崇尚代码简洁干净,有不合理的地方欢迎大家指出。这篇文章主要介绍两个重点:1、前台viewModel的实现。2、后台服务端如何简洁的处理查询请求。需求分析查询页面要有哪些功能呢1、有条件部输入查询条件(这个不打算做成共通的,因为共通的查询拼接
阅读全文
C# 与 C++强强联合 ,深入C#内存管理来分析 值类型、引用类型、装箱、拆箱、堆栈几个概念组合
摘要:深入C#内存管理来分析 值类型、引用类型、装箱、拆箱、堆栈几个概念组合一,stack与heap在不同领域的概念 在C/C++中: Stack叫做栈区,由编译器自动分配释放,存放函数的参数值,局部变量的值等。Heap则称之为堆区,由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收。 而在C#中: Stack是指堆栈,Heap是指托管堆,不同语言叫法不同,概念稍有差别。(此处若有错误,请指正)。 这里最需要搞清楚的是在语言中stack与heap指的是内存中的某一个区域,区别于数据结构中的栈(后进先出的线性表),堆(经过某种排序的二叉树)。 讲一个概念之前,首先要说明它所处的背景...
阅读全文
C#接口日志(基础整理)
摘要:C#接口日志(基础整理)在学习的过程中遇到困惑,不理解? 那就先把它记住,狠狠地记住,就像万有引力,它是那样的,程序语言也是,它就是这样设计的,记清楚也就知道了。 接口标志类的类别(type of class)。把不同类型的类归于不同的接口,可以更好的管理他们。OO的精髓是对对象的抽象,最能体现这一点的就是接口。为什么我们讨论设计模式都只针对具备了抽象能力的语言(比如c++、java、c#等),就是因为设计模式所研究的,实际上就是如何合理的去抽象。(cowboy的名言是“抽象就是抽去像的部分”,看似调侃,实乃至理)。 接口简单理解就是一种约定,使得实现接口的类或结构在形式上保持一致,使程序..
阅读全文
MSMQ实现自定义序列化存储
摘要:MSMQ实现自定义序列化存储在使用MSMQ的时候一般只会使用默认的XML序列化来对消息进行存储,但XML存储的缺点是序列化体积相对比较大和效率上有点低.其实.net提供非常简单的方式让我们实现不同序列化方式来存储MSMQ信息,如json,protobuf等.为了能够让开发人员实现自定义序列化的消息存储,.NET提供了IMessageFormatter这样一个接口,只需要简单地实现这个接口就可以对MSMQ的消息进行处理.以下讲解如何实现json和protobuf的messageformater.IMessageFormatter?123456789101112131415161718192021
阅读全文
C# 泛型List随机排列
摘要:C# 泛型List随机排列有时候得到了一个List,我想把它随机排列一下顺序。而且如果针对不同类型的List都能用,就要用到泛型。其实思想很简单,就是从原List中每次随机取一项,添加到新的List中,并在原List中删除。这样重复,直到原List为空为止。不过要注意,如果要保护原List不受变化,就必须先Copy一份List,再在Copy上进行操作public static List<T> GetRandomList<T>(List<T> inputList){ //Copy to a array T[] copyArray = new T[inputLi
阅读全文
.Net JavaScriptSerializer处理DateTime的误解
摘要:.Net JavaScriptSerializer处理DateTime的误解Fish Li今天发了一篇火爆的《ASP.NET常被忽视的一些细节》,其中有一个地方我认为他大大的冤枉了微软.Net 类库设计人员,你打开链接就直接跳到了重点,先直接粘贴过来引用如下:Fish LiDateTime的JSON序列化在SP.NET3.5中,微软为ASP.NET为设计了一个JSON序列化的工具类, System.Web.Script.Serialization.JavaScriptSerializer,这个类的使用很广泛,而且比WCF的那个JSON序列化类的兼容性要好。 不过,这个类有一个问题,在序列化Da
阅读全文
MemoryStream
摘要:被MemoryStream狠狠地坑了一把Stream是.net数据流操作的一个封装,它提供统一的流读写规则,为后期开发这方面的功能提供了很大的便利性.有些场景下是直接操作byte[]比较灵活所以Stream派生出MemoryStream从byte[]构建一个stream来方便开发人员使用.但在使用的时候碰到了一个非常坑爹事情.一个非常意想不到的结果...应用代码?123456789101112131415stringvalue = "111111111";stringvalue1 = "2222222222222222222222";System.IO.
阅读全文