探知,不断发现
探知不断发现

随笔分类 -  C#

1 2 3 4 下一页
Memory stream is not expandable
摘要:发现项目有一个地方在做图片缩放剪切的一个操作中。碰到有一些特殊的图片会报 Memory stream is not expandable 的错误 跟踪的时候发现是 由方法 originalStream.SetLength()引起的。 某些情况下原图片的长度会小于新的图片长度 (size还比原来小的情 阅读全文
posted @ 2017-06-22 16:58 lovebanyi 阅读(1291) 评论(0) 推荐(0)
微软Azure平台 cloud service动态申请证书并绑定证书碰到的坑
摘要:我们有一个saas平台 部分在azure的cloud service 使用lets encrypt来申请证书。每一个商家申请域名之后就需要通过Lets encrypt来得到证书并绑定证书。 主要碰到的两个问题。 第一个:我们是使用 AcmeClient (类库 https://github.com/ 阅读全文
posted @ 2017-03-30 16:38 lovebanyi 阅读(1031) 评论(0) 推荐(0)
PInvoke在 2.0 3.0的时候正常 升级到4.0后出错。
摘要:方法1: 设置 CallingConvention = System.Runtime.InteropServices.CallingConvention.Cdecl,但是我设置了也是出错。换一个convention没出错。但是调用不正常。 方法2: 大概意思是P/Invoke StackImblan 阅读全文
posted @ 2016-02-18 21:20 lovebanyi 阅读(242) 评论(0) 推荐(0)
ValidationExpression="http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?" can not work
摘要:ValidationExpression="http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?" can not work"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?" this regular expression is given by Visuial studio. we use that to valid Url format.But if the the url contains "+" symbol. we will s 阅读全文
posted @ 2013-11-29 09:10 lovebanyi 阅读(2298) 评论(0) 推荐(0)
值类型引用类型List Remove 方法Remove不掉哪一个项。
摘要:今天改了一个bug.有点意思。写代码的人想从List当中Remove掉一个项。 我去调试了一下一下子就发现了这个问题。把代码给改好了。然后发现有好几种方式可以解决这个问题。我用如果来表示了。 //如果2 返回CacheStudents 这个的话在Foreach当中会出错。想删除的话得用一下ToArrayvoidMain(){varallStudents=GetStudents();varremoveList=GetStudents().Where(it=>it.Number<4);//如果1这边的GetStudents用allStudentsforeach(variteminrem 阅读全文
posted @ 2012-09-18 15:09 lovebanyi 阅读(888) 评论(0) 推荐(0)
Quartz 的SB问题 GetNextValidTimeAfter 输出和输出 时区 不同步,好傻的方法?
摘要:测试代码如下DateTimekk=newDateTime(2012,6,4,15,0,0);Quartz.CronExpressioncron=newQuartz.CronExpression("01415?**");vardt=cron.GetNextValidTimeAfter(kk);好傻好伤。dt的时候是{2012/6/5 7:14:00} 跑出了一个7点来了。正确的期待值应该是 2012-6-4 15:14:00:00后面才想到这个时间跟好跟我们差8个小时。(没有去验证它的代码是否真的是这个问题)后面用了dt.Value.ToLocalTime();得到的时间是 阅读全文
posted @ 2012-06-04 18:08 lovebanyi 阅读(3764) 评论(0) 推荐(0)
使用lambda表达式对属性进行验证。
摘要:public class NullResult { public bool Resulst { get; set; } public string Message { get; set; } }class MailConfig{ public string MailFrom { get; set; } public string MailTo { get; set; } public string MailSubject { get; set; } public string MailBody { get; set; } public bool IsHtml { get; set; } ... 阅读全文
posted @ 2012-04-06 11:03 lovebanyi 阅读(834) 评论(0) 推荐(0)
WCF枚举属性 出错 wcf 枚举的一个陷阱
摘要:[DataContract] public enum GetMailType { [EnumMember] DDA=1, [EnumMember] KVK=2, [EnumMember] BTW=3, }我们有一个类。放在数据库当中用的[DataContract(IsReference = true)] public class UnaddressConfig { [DataMember] public int GetMailTypeID { get; set; } [NotMapped] [DataMember] public GetMailType GetMailType { ge... 阅读全文
posted @ 2012-03-02 14:18 lovebanyi 阅读(3259) 评论(0) 推荐(0)
UnitTest的另类应用 自动测试webservice wcf
摘要:Unit Test最早的时候被大家用在测试代码内部的方法。但是实际上用在测试WebService上面也是非常好用的。我们可以为某一个方法写非常多的测试用例(各种各样的情况),这样当服务改变的时候,我们就可以运行一下这些测试就可以很容易看出来哪些出问题了。哪些东西没有出问题。这个测试比 直接写unittest测试Webservice哪端内部的方法要好非常多。因为可以测试真实的应用环境可以测试不同网络的情况。可以测试线上的环境(当然别忘记做一些扫尾的工作了,在多用户的系统中你就可以指定某个用户来测试)。不象在webservice里面写的方法也许测试是正确的。但是在调用的时候可能就出问题了。 阅读全文
posted @ 2012-02-29 18:17 lovebanyi 阅读(332) 评论(0) 推荐(0)
如何在C#当中实现同花顺,大智慧哪种相同的公式写法
摘要:下面的是一个MACD的公式 DIFF : EMA(CLOSE,SHORT) - EMA(CLOSE,LONG);DEA : EMA(DIFF,M);MACD : 2*(DIFF-DEA), COLORSTICK;它的变量是可以直接进行加减*除的,但是我们要知道,它里面的Close这个东西实际上也是一个数组类型的。同过总结分析我们可以知道。我们在C#当中可以使用操作符重载来实现数组的相加相减,或者运算。但是数组这个东西是系统自带的类型,我们是没有办法对它再进行操作符的重载,所以我们自己需要构造成一个类型出来。在千发股票自动交易软件里面,我创造了一个类型是 FloatList类型,publiccl 阅读全文
posted @ 2012-02-01 11:47 lovebanyi 阅读(3513) 评论(0) 推荐(0)
股票自动交易使用协议
摘要:国家的法律规定其它人是不可能代替别人进行股票操作的。所以我们让用户使用股票自动交易软件的时候必须很清楚的让用户知道,他使用这个软件是他自己的意图,软件执行的策略也是它自己的策略,而不是我强加给他的。这样我们就需要写一个协议给用户看了。只有用户同意的情况下才可以使用我们的软件。原来的时候我是将这份软件的协议放在网站上面的,然后用WebBrwoser的方式来加载这个用户协议。这个就有问题了。变成这个协议是可能一直在变化的。在司法的过程中,应该不能启到保护我们的作用。要是用户亏损了找我们就非常的糟糕了。然后我们就必须使用的本地的协议了。我还是继续用WebBrowser控件。然后把协议文件放到了Res 阅读全文
posted @ 2011-12-22 18:05 lovebanyi 阅读(2713) 评论(0) 推荐(0)
股票交易接口
摘要:今天完成了安信证券的股票交易接口。安信自由鹰的接口是标准的dll 文件,不是com组件,是无法直接引用添加的,你需要使用DllImport这种方式来自己函数的导入了。自己的自动止损软件,和自动交易软件可以加入一个很正规的交易接口了。这样的话还差一个商业化的股票数据接口。商业化的股票数据接口主要是利用... 阅读全文
posted @ 2011-12-06 14:59 lovebanyi
Float 运算的怪异性
摘要:我自己有开发了一个股票自动交易软件。背景:原来我所有的金钱计算用的都是decimal类型。然后后面我看行情数据哪边大部分人用的都是float类型。于是我也决定将所有的类型全部都换成了float类型。然后最近怪事就来了,第一次进行买入的时候都是没有办法掇合成功。再接下来用很少的钱进行购买的时候却可以成功了。但是看一下剩下的钱变成负的了。非常的神奇。第一次为什么会没有办法掇合成功呢。买 的掇合是一件很简单的事情。经过分析发现原来在进行买掇合的时候我会用进行一下花的钱和剩下来的现金进行一下比较。如果钱不过的话当然是不可能买入的了。这样我知道我的最大可买数量肯定是算错了。后面发现 原来 float有. 阅读全文
posted @ 2011-11-01 11:23 lovebanyi 阅读(1458) 评论(0) 推荐(0)
C#闭包
摘要:我们想在每个button的action被调用的时候可以正确调用 动物们的吃的动作于是我们写下如下的代码。 但是可惜的是效果不对 输出来的是 Cat eatCat eat什么会这样呢? 不了解也先不管它了, 但是只要将 稍微改一下代码就行了,见底下的注释部分LinqPaid V1.35.3通过void Main(){List<MockButton> list = new List<MockButton>();List<IEat> animals = new List<IEat>(){new Dog(),new Cat()};foreach(var 阅读全文
posted @ 2011-09-22 18:34 lovebanyi 阅读(1063) 评论(0) 推荐(0)
如何用C#实现一个Whois的查询
摘要:什么是whois简单来说,whois就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商、域名注册日期和过期日期等)。通过whois来实现对域名信息的查询什么去查询Whois?Whois的查询其实也是蛮简单的,就是利用Socket去连接whois提供的服务器。Whois服务的默认端口是43,查询的话就是把域名往这边发送过去,Whois服务器在收到你的请求后就会返回纯文本的格式,这个写起来真的蛮容易,比查询dns协议简单多了。 Whois的服务器有哪些呢?nl whois.domain-registry.nleu whois.euedu whois.edu 阅读全文
posted @ 2011-09-20 11:57 lovebanyi 阅读(5362) 评论(9) 推荐(2)
asp.net使用httpModule来实现一个反向代理
摘要:在网络上找到了一个http://www.codeproject.com/KB/IP/reverseproxy.aspx使用httpHandel来实现反向代理的,原来以为他的配置有点复杂,哪么一些虚拟主机方面就没有办法去进行这种配置也就无法使用了。就想如果把它改成HttpModule的方式,这样在虚拟主机上面也可以用。然后就开始搞了。Module写好了。VS2010哪边测试一下一切都正常。试着加到IIS7哪边集成模式一下子就有错了配置错误锁定冲突 解决的方法是需要把C:\Windows\System32\inetsrv\config下面的applicationHost.config 中的 < 阅读全文
posted @ 2011-08-23 16:54 lovebanyi 阅读(3283) 评论(2) 推荐(2)
205615872 能用来干么?
摘要:今天有一个同事给我出一个考题它说小五11:29:57 不怕 小五 11:32:30 已知一个整形数组 int [] arr = new int[] { 1, 3, 9} ; 小五 11:32:50 这个数组内容,我们可以自己指定 小五 11:33:04 但是有个条件,数组的元素都是唯一的 小五 11:33:24 这是第一个约束条件:数组元素都是唯一。 小五 11:34:02 接着我们任意取出数组元素,比如取出1+3 然后我们知道数组元素是唯一的话也可能会出现不同的解。 我就问要满足 哪种分解。 找出最多项的分解。或者最少项后面他可能就觉得不太对劲就给我这个网站http://sh.diyifan 阅读全文
posted @ 2011-05-22 13:20 lovebanyi 阅读(241) 评论(0) 推荐(0)
如何解决WCF REST 中 WebFaultException抛出的异常客户端WebChannelFactory无法处理的问题
摘要:使用WebChannelFactory在net中可以方便构造出 WCF REST使用的客户端,但是这个时候有一个问题,就是当我们的服务端有一些错误的时候,比如验证通不过我们希望可以抛出自定义的异常消息(是我们同一的消息类),这个时候我们会发现客户端无法处理了 他会出现 Unable to deserialize XML body with root name 'ErrorMessage' and root namespace '' (for operation 'Get' and contract ('IService1', 'http://tempuri.org/')) using D 阅读全文
posted @ 2011-02-22 14:12 lovebanyi 阅读(923) 评论(0) 推荐(0)
自定义Proxy 来做 rest wcf的客户端 与 WebChannelFactory<>的bug
摘要:[ServiceContract(Name="Profile")] public interface IProfile { [OperationContract] [WebGet(UriTemplate = "")] ProfileInfo Get(); [OperationContract] [WebInvoke(UriTemplate = "", Method = "PUT")]ProfileInfo Update(ProfileInfo instance); }var httpRequest = (HttpW 阅读全文
posted @ 2011-02-22 14:11 lovebanyi 阅读(952) 评论(5) 推荐(1)
查找默认的一个实体如果没有就找第一个的写法
摘要:今天又看到了自己的项目有一段代码感觉不太好。需求大概是这样的,有一表,里面有好多的记录,然后我们要求把表示默认的记录找出来,如果没有默认的记录的话就取第一条(或者承便一条)然后他的写法是全部把数据库的数据取出来,判断 是不是有默认的。 没有的话取第一条。我想可以改造成另一种形式,跟据默认字段进行排序,然后找到第一条。下面就是我们的模拟代码 [代码] 阅读全文
posted @ 2010-11-05 18:13 lovebanyi 阅读(361) 评论(0) 推荐(1)

1 2 3 4 下一页