摘要: 利用Noesis.Javascript开源组件可以做到在.net中执行js脚本,同时js脚本也能调用C#函数。这个组件的获得方式:在NuGet中输入搜索"Noesis"就能找到。我们来做个搜索功能:用户能够在textbox中输入js脚本来筛选list记录,界面如下:然后,click filter button后的UI:看,筛选出来了,代码如下(js能调C#写的UserInfo类的各个属性)public class UserInfo { public string FirstName { get; set; } public string LastName { ... 阅读全文
posted @ 2013-08-01 21:19 McKay 阅读(6630) 评论(7) 推荐(0) 编辑
摘要: 当socket接收到数据后,会根据buffer的大小一点一点的接收数据,比如:对方发来了1M的数据量过来,但是,本地的buffer只有1024字节,那就代表socket需要重复很多次才能真正收完这逻辑上的一整个消息。对方发来了5条2个字符的消息,本地的buffer(大小1024字节)会将这5条消息全部收入囊下...那么,如何处理呢?下面我以最简单的一种文本消息来demo根据上面所描述的情况,最重要的关键落在了下面3个因素的处理上消息的结尾标记接收消息时判断结尾标记当本次buffer中没有结尾标记时怎么处理我把写好的核心算法贴出来: StringBuilder sb = new S... 阅读全文
posted @ 2013-08-01 10:32 McKay 阅读(22598) 评论(17) 推荐(4) 编辑
摘要: 在这篇文章中,EventBus实现 - 发布订阅 - XML加载所适用的范围只是本机的事件传播,要是牵涉到多台服务器之间的事件传播就不行了,解决办法有用msmq解决的,Node.js解决的,也有用redis的发布订阅解决的,这次用C# socket来实现,能实现立刻推送事件到所有订阅了相关event的server上。这次的子系统适用的场景如下:主要分2个部分:各个server使用的Event Bus Broker以及Event Bus Server。Broker与Server之间的通信协议就3个:ME、Subscribe、Publish。分别代表:我的名字是、我要订阅的事件是、我触发事件。Ev 阅读全文
posted @ 2013-08-01 00:53 McKay 阅读(4150) 评论(4) 推荐(2) 编辑