自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Edward_S

奋斗是唯一的选择!

  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 Description of CORS Issue

关于web application CORS 问题的项目描述。https://github.com/Edward-Zhou/WCFCORS

2016-12-23 14:50:04 376

原创 Bad Request For WebMessageBodyStyle.Bare or WebMessageBodyStyle.Wrapped

WebMessageBodyStyle.Bare和WebMessageBodyStyle.Wrapped在请求body的格式上略有不同,错误的body请求格式会导致请求失败(Bad Request)ForWebMessageBodyStyle.Wrapped, it should use below, loginDetail is the paramterfor method {"login

2016-07-16 18:46:21 1005

原创 WCF安全机制之自定义账号密码

WCF 实现自定义的Message Security with Custom User Name and Password

2016-07-09 12:58:24 1088

转载 WCF生成客户端对象方式解析

在WCF中有两种不同的方法可以用于创建客户端服务对象,他们分别为: 1. 代理构造法 2. 通道工厂法 本文会从实际应用的角度上,阐述两种方法的一些细节和优劣对比,希望通过学习本文,能掌握什么情况下使用什么样的方式来创建客户端服务代理对象,怎样创建客户端代理对象。本文重点在术,非道。 构造代理法 从名字中可以看出,使用本方法创建客户端服务代理对象,是调用了服务代

2015-12-24 21:43:40 453

原创 设计模式五——依赖倒转原则

一、依赖倒转原则:抽象不应依赖于细节,细节应该依赖于抽象二、依赖倒转原则主要特征:1.高层模块不应该依赖底层模块,两个都应该依赖抽象2.抽象不应该依赖于细节,细节应该依赖于抽象三、里氏代换原则:子类型必须能够替换掉它们的父类一个软件实体如果使用的是一个父类,那么一定适用于其子类,而且它察觉不出父类和子类的区别。也就是说,把父类都替换成子类,程序行

2015-08-05 13:27:32 467

原创 设计模式四——开放-封闭原则

一、开放—封闭原则:软件实体(类、模块函数等等)应该可以扩展,但是不可修改二、主要特征:1.对于扩展是开放的,对于新的需求,可以通过添加继承,重写进行拓展2.对于修改是封闭的,对于新的需求,不可在原始的类中进行修改。三、如何应对变化对于模块封闭,是我们希望达到的,但是在复杂的需求面前,都会存在一些无法对之封闭的变化,这时候可以通过抽象来隔离变化。

2015-08-02 20:54:06 510

原创 设计模式三——单一职责原则

一、单一职责原则:就一个类而言,应该仅有一个引起它变化的原因。如果一个类承担的职责过多,就等于把这些职责都耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受意想不到的破坏。二、描述:一般我们在进行代码设计的时候都会遵循单一职责原则,就是说将不同职责放在不同的类中。会破坏单一职责的情况主要是对原有的职责进行

2015-08-02 20:33:23 433

原创 设计模式二——策略模式

一、策略模式:策略模式是定义一系列算法的方法,所以的算法都是完成的相同的工作,只是实现的方法不同,它可以以相同的方式调用所有的算法,减少了各种算法与使用算法类之间的耦合二、类图: 三、代码//CashSuper的类using System;using System.Collections.Generic;using System.Linq;using Syst

2015-08-02 17:05:18 442 1

原创 设计模式一——简单工厂模式

一、简单工厂(创建型模式)(不是GOF二十三种设计模式之一):由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(产品类继承于父类或者接口)的实例。二、类图:三、代码 class Operation { private double _numberA = 0; private double _num

2015-07-29 21:07:28 357

原创 将Pdf文件转换为Word

在Word 2013里面,我们可以打开一个PDF文件,并对其进行编辑,重新保存后,实现将PDF文件转换为Word文件下面由简单的代码VBA代码实现将某个目录下所有的PDF文件转为Word文件Sub PdftoWord() Dim file As Variant file = Dir("D:\OfficeDev\Word\201505\Pdf\" & "*.pdf")

2015-05-14 20:47:43 1560

原创 XMLHttpRequest查询后台数据文件

XMLHttpRequest提供了一种简单的方式在不刷新页面的同时从URL中检索数据。网页可以只更新页面部分的内容。function loadXMLDoc() { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequ

2015-05-12 20:33:49 900

原创 html5 input的type属性启动输入法

当文本框只能输入数字,英文是一个很常见的需求,比如电话号码,身份证号,卡号, 数量....等等只允许数字输入,当输入验证码时会只是用英文字母,为了更好的用户体验性,直接写出 启动数字键盘的需求,可以使用imeModeimeMode有四种形式,分别是:active 代表输入法为中文inactive 代表输入法为英文auto 代表打开输入法 (默认)disable 代表

2015-05-11 20:04:05 6218

转载 js 获取浏览器高度和宽度值(多浏览器)

IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度

2015-05-04 21:12:54 359

转载 用Js和css创建HTML导航菜单栏

1. js+css实现的简单的下来菜单 css菜单演示 <!-- *{margin:0;padding:0;border:0;} body { font-family: arial, 宋体, serif; font-size:12px; } #nav { line-height: 24px; list-style-type: none; backgro

2015-05-04 21:04:25 2923

原创 实现不将最近使用的Word文件添加到Word本身的最近使用的文件列表中

实现不将最近使用的Word文件添加到Word本身的最近使用的文件列表中我们可以有两种方式可以找到自己最近使用的Word文件1. 打开Word,在Open里面,可以查看到最近使用的文件2. 将Word绑定到TaskBar中,右键点击Word图标,可以看到最近使用的文件这时候,当我们用代码操作Word文件时,或者是添加新的Word文件时,可以希望此Word文件不显示

2015-03-14 15:21:10 561

原创 用含有链接的文本替换PPT文件中含有链接的文本

用含有链接的文本替换PPT文件中含有链接的文本替换PPT中带有链接的文本不能直接修改其文本和链接,当用Replace替换文本时,其原来的链接会转移到该行前面的文本中(Note 如果只是修改其链接,其文本不变,可以直接对其.Address赋值)可以采取如下的步骤实现:1. 获取到该链接文本的文本对象TextRange2. 先替换其显示的文本,(这一步中,原有的链接也会丢失

2015-03-14 15:06:42 886

原创 Typeof GetType is 的区别

Typeof GetType is 的区别typeof takes a type name (which you specify at compile time).GetType gets the runtime type of an instance.is returns true if an instance is in the inheritance tree

2015-03-10 21:33:02 819

原创 给Access Database添加密码

利用VBScript给一个AccessDatabase添加PasswordSolution1:创建一个.vbs文件,修改内容如下Dim appset app=Createobject("Access.Application")app.OpenCurrentDatabase "D:\OfficeDev\Access\Te

2015-03-10 21:15:34 1144

原创 The value of the property 'type' cannot be parsed

The value of the property 'type' cannot be parsedIssue:在安装Office add-in时,有时会报关于VSTOInstaller.exe.Config的错误,具体错误代码如下"The value of the property 'type' cannot be parsed. The error is: Could n

2015-03-08 14:08:17 1976

原创 Object reference not set to an instance of an object

1.Sistuation当在Unit Testing中使用app.config文件,调用类中的方法可能会出现如下的错误System.NullReferenceException: Object reference not set to an instance of an object.这是因为在Unit Testing项目中,虽然引用了要被测试项目类的Dll,但是并没有对app.c

2015-03-08 13:49:35 5737

原创 用反射获取和设置嵌套属性

get or set values of the Nested Property using C# Reflection        private void button2_Click(object sender, EventArgs e)        {            Person p1 = new Person();            Customer

2015-01-27 19:23:02 878

原创 DataGridView的列和详细内容的对齐

想要自定义DataGridView的列和详细内容的对齐方式,为每一个列设置对齐方式 public static void CreateColumn(DataGridView grid, string name, string caption, DataGridViewContentAlignment alignment) { grid.Co

2015-01-15 22:59:02 1688

原创 Combobox下拉框加深显示Combobox中text的值,取消原有的填充显示

在输入Combobox内的text的值后,点击下拉按钮,Combobox下拉框内的值的内容如果与text的值相同,则会加深显示,底色为蓝色。有时候,Combobox下拉框内容的值没有经过排序,在进行关联显示的时候,可能不会显示到我们想要的准确的值。比如说,Combobox的下拉框的内容如下TestTestTestTestTestTestTestTestTestTestTest如

2015-01-15 22:49:29 1423

原创 对数组进行特定的从小到大的排序如将1,1,2,2,3,3,4,4,5,5,5,5,5,5排序成1,2,3,4,5,1,2,3,4,5,5,5,5,5

对数组进行特定的从小到大的排序将1,1,2,2,3,3,4,4,5,5,5,5,5,5排序成1,2,3,4,5,1,2,3,4,5,5,5,5,5具体实现的代码如下: private void button1_Click(object sender, EventArgs e) { List input = new List() { 1, 1, 2

2015-01-07 21:21:00 853

原创 实现Thumbnail Toolbars,对最小化任务栏的图标点击按钮

实现Thumbnail Toolbars如同win7系统中Windows Media Player播放器自动的功能一样,在最小化到任务栏,当你鼠标滑动到windows Media Player时,可以看到一个播放的按钮,如下图 在我们自己的程序中,我们可以添加按钮,并且对所添加的按钮添加不同的事件,下面进行一个简单的例子:1.首先,这是用的Thumbnail Toolbar

2015-01-07 21:17:31 755

原创 关于服务器端与客户端的交互

关于服务器端与客户端的交互首先,服务器端与客户端的交互涉及到两个方面,一个服务器,一个客户端。下面将进行的一个列子是,客户端发送信息给服务器端,服务器端根据客户发送的请求再返回信息给客户端。服务器端:定义变量 private TcpListener tcpListener; //监听 private Thread listenThread;//

2015-01-07 21:12:12 1110

原创 关于异步执行(async)与异步等待(await)

异步执行与异步等待的内容比较多点,今天稍微接触了下,只谈下自己的感受与想法,希望能够抛砖引玉异步执行:可以同时执行多个任务,不需要等待一个任务完成之后再去执行下一个任务(描述比较多的是不会造成前台UI的锁定,比如一个Button用了异步方法,可以对Button执行多次点击,这些点击都是在异步执行的,也可以移动,拖拉,放大缩小UI界面;如果没有使用异步,点击Button后是不能对UI界面

2014-12-24 21:09:43 1463

原创 对于装了Visual C++ 2010 RunTinme Libraries (x86)的电脑,ClickOnce会重新安装会修复

当客户机安装ClickOnce的程序时,如果程序中需要系统组件Visual C++ 2010 RunTinme Libraries (x86),而电脑中已经安装了Visual C++ 2010 RunTinme Libraries (x86)这个,在安装ClickOnce程序时,还是会提示安装或者是修复Visual C++ 2010 RunTinme Libraries (x86),并且有时会提示

2014-12-23 20:38:43 1301

原创 将.xlsx文件读取到.xml文件

将.xlsx文件读取到.xml文件 var fileName = Application.StartupPath + @"\Sample.xlsx"; var connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}; Extended Properties=Exce

2014-12-23 20:18:23 2063

原创 ListView动态修改列宽

在DataGridView中有autocolumnmode来动态改变现实Column的列宽,在ListView中是没有这个属性的,可以通过ListView.SizeChanged 事件去修改列宽,实现相同的效果代码如下private bool Resizing = false; private void ListView_SizeChanged(object sender, Event

2014-12-23 20:06:17 2591

原创 通过键盘点击回车键选择ComboBox中下拉的元素

当我们选择ComboBox中下拉的元素时,可以直接使用鼠标点击选取,当有特殊需要想要通过敲回车选中元素时,可以使用键盘事件KeyPress代码如下:        private void comboBox1_KeyPress(object sender, KeyPressEventArgs e)        {            comboBox1.Text = c

2014-12-23 19:51:03 4941

原创 在Winform Design设计器内允许修改UserControl内的控件

当将UserControl添加到Winform窗体之后,在Winform窗体内,UserControl里面的控件是不能修改的,要想修改UserControl里面的控件,比如修改label的位置,大小等,可以试试下面的方法:1.Create  a project and add the reference System.Design2.Add the UserControl to

2014-12-19 21:50:42 1356

原创 GDI画图时的锯齿效果弱化

GDI画图时的锯齿效果弱化当在画图时,图形有时会出现锯齿,可以使用SmoothingMode.AntiAlias来消除代码如下:g.SmoothingMode = SmoothingMode.AntiAlias;使图像的边缘圆滑清晰锐化的可以试试FillPath代码如下g.FillPath((Brushes.Black), path);或者是针对于文本锯齿的

2014-12-12 20:31:45 5273

原创 将数据源的数据格式化显示,加上金额符号

将数据源的数据格式化显示,加上金额符号例如,将textbox内的数值格式化加上货币符号,在textbox的内容改变时,textbox绑定的数据源的值的格式保持不变,还是数值,不会有货币符号。创建一个Binding,向Parse事件和Format事件添加ConvertEventHandler委托,并通过DataBindings属性向TextBox控件的BindingsCo

2014-12-11 19:34:45 847

原创 在Datatable,DataView和DataGridView中不显示重复的记录

在Datatable,DataView和DataGridView中不显示重复的记录其中,对于直接在查询语句中使用distinct不作过多说明,主要从代码层角度实现方法一,在加载数据的时候,对于重复的数据,选择不进行加载。代码如下:OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.ACE

2014-12-10 19:14:21 1192

原创 对图像透明化的处理

对图像透明化的处理原始的picturebox 要实现这种模态效果 代码如下  private void button5_Click(object sender, EventArgs e) { Graphics g = pictureBox1.CreateGraphics(); Rectangle rect

2014-12-10 19:09:35 1149

原创 通过BackgroundWorker实现进度条的显示,并将进度显示在进度条上

通过BackgroundWorker实现进度条的显示,并将进度显示在进度条上BackgroundWorker的类允许您在一个单独的专用线程运行的操作。喜欢下载和数据库事务耗时的操作可能会导致用户界面(UI),以看起来就像是已经停止,而他们正在运行响应。当你想要一个负责任的UI,你都面临着这样的业务相关的长期拖延,BackgroundWorker的类提供了一个方便的解决方案。其中,对

2014-12-09 19:57:41 939

原创 创建自动发邮件的服务

创建自动发邮件的服务一.创建服务1.在VS中,菜单栏上,选择文件->新建->项目,选择“Windows 服务”,对项目重命名2.在编辑菜单上,选择“查找和替换”将Service1改成ServiceEmail;3.在Service1.cs[Design]中,将SeriviceNamede 名称属性设置为ServiceEmail;4.将解决方案管理器中,将Service1.cs重命

2014-12-08 20:45:30 803

原创 调试windows服务的OnStart方法

调试windows服务的OnStart方法1.在OnStart方法内添加如下代码 #if DEBUG System.Diagnostics.Debugger.Launch(); #endif完整的代码如下 protected override void OnStart(string[] args)

2014-12-08 20:20:51 5552

翻译 调试Windows服务

在 Visual Studio 中创建一个服务项目无法直接启动,在调试器中。一个小的调整可以直接运行的服务和摆脱部署要测试它的服务的需要。从第一次我试着早在很久以前我总是觉得他们难于调试的.NET 开发 c + + 中的 Windows 服务。当发展中国家想要我的环境设置多个启动项目,以便我可以打开一个解决方案,按 F5 并具有所需的一切运行。如果解决方案包含一个服务一个冗长乏味的编译

2014-12-08 19:54:29 414

WCF入门整理

WCF学习过程中涉及的内容,以及关于WCF跨域问题和用户名与密码的安全问题

2018-04-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除