
C#
兵工厂三剑客
莫愁前路无知己,天下谁人不识君
展开
-
无法从命令行或调试器启动服务
无法从命令行或调试器启动服务,必须首先安装Windows服务(使用installutil.exe),然后用ServerExplorer、Windows服务器管理工具或NET START命令启动它 1.以管理员身份运行cmd2.安装windows服务 cd C:\Windows\Microsoft.NET\Framework\v4.0.30319(InstallUtil.exe的路径,注意Inst...原创 2018-03-18 08:58:40 · 11411 阅读 · 0 评论 -
C#设计模式总结
转载自:C#设计模式总结一、引言 经过这段时间对设计模式的学习,自己的感触还是很多的,因为我现在在写代码的时候,经常会想想这里能不能用什么设计模式来进行重构。所以,学完设计模式之后,感觉它会慢慢地影响到你写代码的思维方式。这里对设计模式做一个总结,一来可以对所有设计模式进行一个梳理,二来可以做一个索引来帮助大家收藏。 PS: 其实,很早之前我就看过所有的设计模式了,但是并没有写博客,但是不久就...转载 2018-07-10 14:26:16 · 414 阅读 · 0 评论 -
C#中泛型约束(where)是什么?
转载自:C#中泛型约束where是什么泛型约束: 确保泛型类使用的参数是提供特定方法的类型。详见:https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/generics/generic-classes约束说明T:结构类型参数必须是值类型。T:类类型参数必须是引用类型;这一点也适用于任何类、接口、委托或数组类型。T:ne...转载 2018-07-11 11:26:21 · 4550 阅读 · 0 评论 -
C#反射实现简单的插件系统
转载自:C#反射实现简单的插件系统如果用过一些优秀的开源或是非开源的应用软件,就会发现这些软件的一个很大的优势就是其开放性,任何有能力的人都可以为其开发不同的插件来增强其的功能。比如著名的foobar2000,Vim和TotalCommander等等。C#的反射可以用来实现一个简单的插件系统。思路很简单,我们创建一个解决方案,包含三个工程,一个为我们的软件MyApplication,一个为插件接口...转载 2018-07-11 15:40:18 · 2634 阅读 · 0 评论 -
C#开发命名规范
转载自:C#开发命名规范学习C#之初,始终不知道怎么命名比较好,很多时候无从命名,终于有一天我整理了一份命名规范文档,自此我就是按照这个命名规范书写代码,整洁度无可言表,拙劣之处请大家斧正,愚某虚心接受,如有雷同,不胜荣幸 C#语言开发规范 作者ching 1. 命名规范a) 类【规则1-1】使用Pascal规则命名类名,即首字母要大写。eg:Class Test{ ...}【规则1-2】...转载 2018-07-11 15:52:15 · 592 阅读 · 0 评论 -
VS2013添加文件头部注释模版
转载自:VS2013添加文件头部注释模版在看视频的时候发现,视频中每次新建一个类文件 都会自动生成一串 头部的注释:so 百度了一下:http://jingyan.baidu.com/article/3aed632e649d8570108091a7.html原来这样啊!vs2013的安装路径: D:\vs2013\Common7\IDE\ItemTemplatesCache 里面各种语言模板找到 ...转载 2018-07-11 15:58:51 · 791 阅读 · 0 评论 -
WCF中关于HttpContext.Current为空的解决方法
转载自:WCF中关于HttpContext.Current为空的解决方法1. 在hosting WCF的web.config中加入:<system.serviceModel> <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/></system.serviceModel>2. 在Ser...转载 2018-07-13 09:59:31 · 1206 阅读 · 0 评论 -
NHibernate提示表is not mapped
一定要将hbm.xml映射文件设置成嵌入的资源。下面是mysql的映射文件:<?xml version="1.0" encoding="utf-8" ?><hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"> <class name=" wh.db.test.model.Test, wh.db.test.mo.原创 2018-07-13 10:36:08 · 894 阅读 · 0 评论 -
列“ReservedWord”不属于表 ReservedWords
转载自:列ReservedWord不属于表ReservedWords的解决方法列“ReservedWord”不属于表 ReservedWords 的解决方案。 ReservedWord不属于ReservedWords。首先明确,这个列真不知道是什么东东。 但错误的原因算是找到了!! 原因:MySql.Data.dll没有和NHibernate.dll在同一个目录下。MySql.Data.dll添...转载 2018-07-13 10:46:28 · 612 阅读 · 0 评论 -
vs2010 安装mvc3
转载自:VS2010安装mvc3vs2010 安装mvc3下载链接如下:MVC 3安装包:http://www.microsoft.com/downloads/zh-cn/details.aspx?familyid=d2928bc1-f48c-4e95-a064-2a455a22c8f6&displaylang=zh-cnVS工具更新包:http://www.microsoft.com/d...转载 2018-07-13 12:44:08 · 489 阅读 · 0 评论 -
C#泛型详解
转载自:C#泛型详解这篇文章主要来讲讲c#中的泛型,因为泛型在c#中有很重要的位置,对于写出高可读性,高性能的代码有着关键的作用。一、什么是泛型?泛型是 2.0 版 C# 语言和公共语言运行库 (CLR) 中的一个非常重要的新功能。我们在编程程序时,经常会遇到功能非常相似的模块,只是它们处理的数据不一样。但我们没有办法,只能分别写多个方法来处理不同的数据类型。这个时候,那么问题来了,有没有一种办法...转载 2018-07-13 14:37:24 · 1978 阅读 · 1 评论 -
异步编程模式BeginInvoke和EndInvoke方法
转载自:异步编程模式BeginInvoke与EndInvoke方法为什么要进行异步回调?众所周知,普通方法运行,是单线程的,如果中途有大型操作(如:读取大文件,大批量操作数据库,网络传输等),都会导致方法阻塞,表现在界面上就是,程序卡或者死掉,界面元素不动了,不响应了。异步方法很好的解决了这些问题,异步执行某个方法,程序立即开辟一个新线程去运行你的方法,主线程包括界面就不会死掉了。异步调用并不是要...转载 2018-07-13 16:33:39 · 659 阅读 · 0 评论 -
C#委托的几种表现方式
以Func为例子:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace mytest.del{ class Program { static Func<int, int, int> plusDel; ...原创 2018-07-13 20:06:10 · 845 阅读 · 0 评论 -
VS2017自定义组件无法添加到工具箱的问题
最近在使用VS2012 写一个自定义控件时,添加到工具箱中出现“没有可放置在工具箱上的组件”,网上查了有几种解决方法:1.类库中的类要使用public声明2.添加一个不带参数的构造函数但是这个仍然没能解决问题,最后发现是我的.dll文件存放在含有中文的的路径下,只要把路径改为不含中文的就可以添加进去了...原创 2019-07-05 14:15:44 · 2979 阅读 · 0 评论 -
将WCF服务发布到IIS
转载地址1:https://www.cnblogs.com/skdsxx/p/5072726.html转载地址2:http://blog.youkuaiyun.com/mazhaojuan/article/details/7660657准备:先在C:\Windows\Microsoft.NET\Framework64\v3.0\Windows Communication Foundat转载 2017-11-10 21:26:47 · 4886 阅读 · 2 评论 -
指定 ClickOnce 应用程序的“开始”菜单名称
如果 ClickOnce 应用程序安装为联机和脱机皆可使用,则会在“开始”菜单和“添加或删除程序”列表中添加一项。 默认情况下,显示名称与应用程序程序集名称相同,但您可以通过设置“发布选项”对话框中的“产品名称”来更改显示名称。“产品名称”将显示在 publish.htm 页中;对于安装的脱机应用程序,它将是“开始”菜单中显示的名称,也将是“添加/删除程序”中显示的名称。“发行者名原创 2017-11-10 14:27:18 · 504 阅读 · 0 评论 -
C#提示未能正确加载程序集或它的某一个依赖项
由于更换了系统,将32系统换成了64位的系统。结果在编译项目的时候,遇到提示:其他信息: 未能加载文件或程序集“Seagull.BarTender.Print, Version=10.1.4.1, Culture=neutral, PublicKeyToken=109ff779a1b4cbc7”或它的某一个依赖项于是定位到C:\Windows\Assembly文件夹中,原创 2017-05-23 14:20:42 · 16066 阅读 · 1 评论 -
Message类的Msg属性所关联的所有ID
转载自:Message类的Msg属性所关联的所有IDWM_NULL=0x0000WM_CREATE=0x0001WM_DESTROY=0x0002WM_MOVE=0x0003WM_SIZE=0x0005WM_ACTIVATE=0x0006WM_SETFOCUS=0x0007WM_KILLFOCUS=0x0008WM_ENABL转载 2017-05-26 13:52:02 · 1883 阅读 · 0 评论 -
静态变量与实例变量的区别
在语法定义上的区别:静态变量前要加 static 关键字,而实例变量前则不加。在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通原创 2017-05-09 13:26:52 · 466 阅读 · 0 评论 -
C#使用System.Speech制作语音提示功能。
转载自:C#语音提示c#实现语音阅读以及文本转语音文件是基于c#的一个类库(SpeechSynthesizer )实现的,使用该类必须要添加引用using System.Speech.Synthesis;直接是无法添加引用的,先对项目进行添加应用示例图using System;using System.Collections.Generic;us转载 2017-05-31 16:25:54 · 22686 阅读 · 3 评论 -
C#多线程面面观
转载自:C#多线程面面观前段时间总算过了把面试别人的瘾(虽然只参与了几个电话面试),经过几个星期总算尘埃落定,新人也已报道。项目组当时准备了一些题,用来考察他们的基本功。总的来说大伙都能说出点,唯一空白的是多线程,无一例外的都说没接触过多线程,也不了解多线程。我就感觉很奇怪,两年左右的程序员竟然直接说不了解多线程(我感觉就算是为了换工作也应该突击了解下的,毕竟我们的招聘要求上也是有了解多线程这转载 2017-07-12 10:02:55 · 461 阅读 · 0 评论 -
C#的ManualResetEvent在多线程中的用法
转载自:ManualResetEvent用法转之:http://blog.tom.com/blog/read.php?bloggerid=313638&blogid=13505Thread and Sync In C# (C#中的线程与同步)别相信别人告诉你的所有的事。其实C#中的线程是很简单的。线程是程序中的控制流程的封装。你可能已经习惯于写单线程程序,也就是,程序在它们的代码中转载 2017-07-12 15:19:10 · 1631 阅读 · 0 评论 -
.Net框架的ado.Net实体对象模型初步使用
先创建一个控制台应用程序应用。然后按照以下图片所示顺序进行操作。弹出安全警告的时候不必管它,一直点击确定,有可能会弹出几次(我的弹了2次)。然后可以看到生成了2个类。编写新增记录的代码:using System;using System.Collections.Generic;using System.Linq;转载 2017-07-14 17:37:27 · 892 阅读 · 0 评论 -
C#根据反射实现ORM映射
转载自:C#根据反射实现ORM映射(一)关于反射什么是反射?反射就是在运行时,动态获取对象信息的方法。比如:运行时获得对象有哪些属性,方法,委托等。反射的作用?能够实现运行时,动态调用对象的方法,以及动态设置、获取属性值等。反射的示例:using System;using System.Reflection;转载 2017-07-14 15:31:03 · 1183 阅读 · 0 评论 -
.Net中初步了解ORM框架
转载自:.Net中初步了解ORM框架1.新建 一个控制台项目2.添加一个数据项a.选择数据库注:数据库中的表如下:b.选择EF版本c.选择表3.初步了解EF框架看到了多了一个以 edmx后缀的文件在edmx文件上,右击打开方式,选择 XML(文本)编辑器 打开该xml主要包含三部分:(数据库存储模型,实体模型,关系映射)edmx还转载 2017-07-14 15:43:26 · 821 阅读 · 0 评论 -
C#自定义泛型类
转载自:C#自定义泛型类C#自定义泛型类用得最广泛,就是集合(Collection)中。实际上,泛型的产生其中一个原因就是为了解决原来集合类中元素的装箱和拆箱问题(如果对装箱和拆箱概念不明,请百度搜索)。由于泛型的使用,使得集合内所有元素都属于同一类,这就把类型不同的隐患消灭在编译阶段——如果类型不对,则编译错误。 这里只讨论C#自定义泛型类。基本自定义如下:转载 2017-07-18 11:36:48 · 1510 阅读 · 0 评论 -
VS2012的解决方案资源管理器里什么都不显示
打开项目时,解决方案管理器如下图所示:解决方法:先关闭vs,把C:/Users/<your users name>/AppData/Local/Microsoft/VisualStudio/12.0/ComponentModelCache文件夹下删除所有文件及文件夹;最后重启就可以解决原创 2017-07-26 19:45:31 · 4596 阅读 · 2 评论 -
C#委托的介绍(delegate、Action、Func、predicate)
转载自:C#的委托介绍委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递。事件是一种特殊的委托。 1.委托的声明 (1). delegate delegate我们常用到的一种声明 Delegate至少0个参数,至多32个参数,可以无返回值,也可以指定返回值类型。 例:public delega转载 2017-08-29 12:39:46 · 350 阅读 · 0 评论 -
C#的委托介绍2
转载自:C#的委托介绍CLR环境中给我们内置了几个常用委托Action、 Action、Func、Predicate,一般我们要用到委托的时候,尽量不要自己再定义一 个委托了,就用系统内置的这几个已经能够满足大部分的需求,且让代码符合规范。一、ActionAction封装的方法没有参数也没有返回值,声明原型为:1 public delegate void A转载 2017-09-30 17:11:54 · 285 阅读 · 0 评论 -
Log4net入门使用
转载自:Log4net使用入门简介几乎所有的大型应用都会有自己的用于跟踪调试的API。因为一旦程序被部署以后,就不太可能再利用专门的调试工具了。然而一个管理员可能需要有一套强大的日志系统来诊断和修复配置上的问题。经验表明,日志记录往往是软件开发周期中的重要组成部分。它具有以下几个优点:它可以提供应用程序运行时的精确环境,可供开发人员尽快找到应用程序中的Bug;一旦在程序中加转载 2017-10-13 10:07:13 · 304 阅读 · 0 评论