‘C#’ 分类的存档

[转载].Net 开发者必备的11款开发利器_IT新闻_博客园. 现如今,技术发展十分迅猛,开发者只有通过不断的学习才能跟得上步伐。而为了便于学习和工作,涌现了很多优秀的开发工具用以帮助开发者提高工作 效率。同时,这些工具大都开源而且免费,性能也十分优异。以下就是为 .NET 开发者准备的 11 款开发利器,希望它们能让你的网站开发之路变得简单易行。 1、Webmatrix WebMatrix 是微软最新的 Web 开发工具,它包含了构建网站所需要的一切元素。你可以从开源 Web 项目或者内置的 Web 模板开始,也可以直接从无到有编写代码。简单并且完全是免费的。开发网站从来没有如此简单。   2、Visual Studio 2010 Express Visual Studio 2010 Express 是一套免费、入门级的产品。它的用户界面十分精简,同时拥有 Visual Studio 的核心功能,常用于为某一平台开发应用。   3、Notepad ++  Notepad++ 是一款 Windows 环境下免费开源的代码编辑器,支持多种编程语言,不仅有语法高亮度显示,也有语法折叠等功能。   4、JustDecompile JustDecompile 是一款新的、免费的 .NET 反编译软件。Telerik 公司根据多年的代码分析经验开发了这一反编译利器。它能让你毫不费力地分析编译好的 .NET 程序,同时只需点击一下按钮就可以进行反编译。   5、Fiddler Fiddler 是一款 Web 调试代理软件。它能够记录所有客户端和服务器间的 HTTP 请求,允许你监视、设置断点、甚至修改输入输出数据。Fiddler 包含了一个强大的基于事件脚本的子系统,并且能够使用 .NET 框架语言扩展。   6、FileZilla FileZilla [...]

2012年4月25日16:20 评论关闭

[转载]SVN自动更新测试服务器工作副本(C#写winform程序实现) – Machine Lee – 博客园. 根据工作需要,项目将采用SVN做版本控制,于是乎就安装了如下软件: 1、TortoiseSVN Version:1.6.7 2、Subversion Version:1.6.5 3、VisualSVN Version:2.0.6 其中1是SVN客户端,2是服务器,3是用于与VS .Net framework集成的组件。 具体安装步骤就不多讲了,网上很多帖子都详细描述过了,本文主要讲的是如何实现最新提交自动更新到测试服务器工作副本。   背景: 为什么要实现SVN自动更新呢?因为实际开发过程中,程序员一般都是在本地开发机上 开发,本地验证无误后上传至测试服务器验证生产环境正确性,修改代码多的时候,上传文件也是一件累人的活,还浪费时间,所以就有了实现SVN自动更新到测 试服务器工作副本的需求,既省时,又能保证文件不遗漏。   过程: 要实现SVN自动更新,无非就是使用SVN的钩子,网络上不少帖子都是讲如何通过版 本库hooks文件夹下post-commit文件实现自动更新的,有的是写成.bat文件,有的是shell脚本。笔者开始是借鉴网上的方法,写成了 post-commit.bat文件,实现了自动更新。但是,由于我们的项目比较大,写成.bat文件的话,就只能在根目录下执行update操作,速度 非常的慢,大概是2分钟。是可忍孰不可忍,于是上网查找,发现.exe文件也可以作为钩子程序嘛,这不就简单了,于是用C#写了个Winform程 序,commit+update瞬间完成!下面是C#代码,有详细的备注,供大家参考! using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Diagnostics; using System.IO; using System.Text.RegularExpressions; namespace SVNGetTheLastRes { public partial class [...]

2012年4月25日13:46 评论关闭

转载重构36计(2) – West_Link – 博客园. 第七计:串联函数调用 当一个类的大部分函数被较为频繁地调用,并且包含连续性地调用,那么可以考虑为这个类中那些没有返回值的函数增加返回值,即返回对象本身,这样就可以串联函数调用,使用起来较为方便,举个例子: // 表示用户的类 public class User{ public void setName(String name); public void setAge(int age); public void setPhoneNumber(int phoneNumber); } 下面是不使用串联函数调用的情况:   User user = new User(); user.setName(“West_Link”); user.setAge(3); user.setPhoneNumber(122333);   下面是使用串联函数调用的情况:   User user = new User().setName(“West_Link”).setAge(3).setPhoneNumber(123333);   只需要为那些函数增加一个User对象的返回值即可,如下: public User setName(String name){ this.name = name; return this; } [...]

2012年4月16日17:18 评论关闭

[转载]跟我一起制作数据采集-获取淘宝网店宝贝数据信息(一) – Eckel Cheung – 博客园. 创建项目并绘制界面 打开Visual Studio并创建一个基于.net 4.5的WPF项目:GetTaoBaoItems 之所以采用4.5是因为后面我们将要用到里面免费的新的异步编程特性. 绘制如下主界面:   下载网页 我们知道要进行网络数据采集必不可少就要下载网页内容,因此我们首先需要构建一个下载网页内容的函数: 注意using System.Net   我们下载哪个网页了? 我们可以通过类似网址查看一个店铺的所有宝贝: [淘宝店铺地址]/search.htm,如下图所示: 如上图红圈所示,宝贝是分页显示的那么第二页的地址在哪里了?我们选择第二页: 我们可以得知第k页的网址是: [淘宝店铺地址]/search.htm?search=y&viewType=grid&orderType=_newOn&pageNum=k#anchor 因此我们就可以得知我们要下载的内容应该是这样的: 先下载第一页的内容并获取红圈所示的总页数,然后下载第二页到最后一页.   下载第一页并获取总页数 为获取按钮添加点击按钮事件并在里面添加下载第一页的内容: 下面我们将要讲解我们怎么来获取页面总页数这个数据. 我们这里开始将要用到正则表达式,大家最好先到如下网页进行一定基础的了解: http://www.yesky.com/imagesnew/software/vbscript/html/jsgrpRegExpSyntax.htm 先添加如下引用: 然后在获取按钮点击事件里添加如下代码: 运行程序并点击获取按钮: 现在将这段代码重构为函数GetPageCount:   获取宝贝信息 我们当把某一页网页下载回来之后要做的就是对该网页进行分析,如下代码所示: 运行一下: 那么下面我们将上面的代码重构为函数AnalyPages: 运行代码:   将数据显示到界面上 我们先添加如下内容来存储数据: 将其绑定到listbox: 修改之前的函数AnalyPages: 运行程序:   对程序进行异步改造 先将下载网页的函数修改如下: 修改使用到了此函数的所有函数: 我们还需要对函数AnalyPages进行二次改造因为这里将会下载数百网页: 我们重构一下循环的内部部分: 改写下AnalyPages本身: [...]

2012年4月14日08:48 评论关闭

[转载]C# #if, #else和#endif预处理指令 – Peter Luo – 博客园.     #if 使您可以开始条件指令,测试一个或多个符号以查看它们是否计算为 true。如果它们的计算结果确实为true,则编译器将计算位于 #if 与最近的 #endif 指令之间的所有代码。例如, 1 #if Debug 2 string file = root + “/conf_Debug.xml”; 3 #else 4 string file = root + “/conf.xml”; 5 #endif 复制代码     这段代码会像往常那样编译,但读取debug配置文件包含在#if子句内。这行代码只有在前面的#define命令定义了符号DEBUG后才执行。当编译器遇到#if语句后,将先检查相关的符号是否存在,如果符号存在,就只编译#if块中的代码。否则,编译器会忽略所有的代码,直到遇到匹配的#endif指令为止。一般是在调试时定义符号DEBUG,把不同的调试相关代码放在#if子句中。在完成了调试后,就把#define语句注释掉,所有的调试代码会奇迹般地消失,可执行文件也会变小,最终用户不会被这些调试信息弄糊涂(显然,要做更多的测试,确保代码在没有定义DEBUG的情况下也能工作)。这项技术在C和C++编程中非常普通,称为条件编译(conditional compilation)。 参考msdn实例: // preprocessor_if.cs #define DEBUG #define VC_V7 using System; public class MyClass { static void Main() { #if [...]

2012年4月7日16:20 评论关闭
备案信息:冀ICP备10007948号