聚合文章列表
3 浏览

Unity3D框架插件uFrame实用参考手册(二)

5.创建属性和命令本小节主要内容包括:在Element节点上创建属性数据在Element节点上创建命令数据5.1.在Element节点上创建属性数据在这里,我们首先为Login节点中的属性(Properties)部分添加一个新的属性,该属性为String型,名为UserName。首先选中Login节点,点击Properties右边的“+”号按钮,此时我们可以发现Properties区域已经增加了一个新的属性。如果需要修改属性的名字,直接点击当前的属性名即可进入编辑状态。若要修改属性的类型,则点击当前属性,会弹出一个属性的选择菜单。这样,我们就在Login节点上增加了一条名为UserName的数据了。5.2.在Element节点上创建命令数据为ViewModel添加了一条属性数据之后,我们接下来再为ViewModel添加第一条命令,用来实现点击登录按钮之后登录功能的实现。同样,点击Commands旁边的“+”按钮,就可以在Commands区域添加一个新的命令。和属性数据类似,我们也可以修改命令的返回类型和命令的名字。6.绑定Vi

c# 2016-07-02 发布
10 浏览

<译>DevExpress v16.1更新说明(WinForms篇)

新主题Material主题DevExpressASP.NETv16.1为桌面和可触摸设备添加了仿Office2016的主题,如图:iOS9ASP.NET为触控设备做了设计优化和功能增强:VerticalGridControlDevExpressASP.NETVerticalGridControl提供了一种全新展示/编辑信息的方式。不同于传统的网格,VerticalGrid的数据源字段以行(row)展示,而数据源记录以列(columns)展示。主要支持以下功能:DataBinding(支持多数据源类型)DataFilteringDataEditingExpandableCategoriesPagingScrolling在线DemoChartControl在线演示DevExpressWinForms,WPF和ASP.NET控件新增以下图表类型:StackedStepAreaFullStackedStepAreaRadarRangeAreaPolar

c# 2016-07-05 发布
0 浏览

使用 NUnit 为 Unity3D 编写高质量单元测试

0x00单元测试Pro&Con最近尝试在我参与的游戏项目中引入TDD(测试驱动开发)的开发模式,因此单元测试便变得十分必要。这篇博客就来聊一聊这段时间的感悟和想法。由于游戏开发和传统软件开发之间的差异,因此在开发游戏,特别是使用Unity3D开发游戏的过程中编写单元测试往往会面临两个主要的问题:游戏开发中会涉及到很多的I/O操作处理,以及视觉和UI的处理,而这个部分是单元测试中比较难以处理的部分。具体到使用Unity3D开发游戏,我们自然而然的希望能够将测试的框架集成到Unity3D的编辑器中,这样更加容易操作。但是,单元测试的好处也十分多。TDD,测试驱动开发。编写单元测试将使我们从调用者观察、思考。特别是先写测试,迫使我们把程序设计成易于调用和可测试的,即迫使我们解除软件中的耦合。可以将任务的粒度降低。当然TDD是否适合游戏开发尚有争论,但是单元测试的必要性是无需置疑的。单元测试是一种无价的文档,它是展示方法或类如何使用的最佳文档。这份文档是可编译、可运行的,并且它保持最新,永远与代码同步。更加适合应对需求

c# 2016-07-06 发布
AD 友情赞助
2 浏览

<译>DevExpress v16.1更新说明(VCL篇)

PDFViewer(CTP)DevExpressVCLv16.1将PDFViewer控件加入CommunityTechnologyPreview(CTP),意味着可以直接在VCL应用中直接浏览PDF文件,无需额外安装PDF阅读器。支持的功能有:内容缩放和滚动Side-by-side和连续页面布局嵌入式字体可以将任何页面导出为图片可在设计时生成Ribbon/ToolbarUICalloutPopupControlVCLCalloutPopupControl支持显示OSX/iOS样式的自定义弹出窗口,支持的功能有:弹出动画效果可选的圆角效果可自定义弹出位置CalloutPopupControlRangeTrackBarEditorv16.1新增一个全新的RangeTrackBarEditor,一个可以选择区间值的进度条。这个编辑器可以用于两种类型的使用场景:standalone(inunboundordata-awaremode)和insideconta

c# 2016-07-11 发布
18 浏览

三维空间两直线/线段最短距离、线段计算算法

设有两空间线段$L_s$,其起点、终点坐标为$s_0、s_1$,方向向量$\vecu=s_1-s_0$$L_t$,其起点、终点坐标为$t_0、t_1$,方向向量$\vecv=t_1-t_0$记两线段对应的直线为$l_s、l_t$,采用向量表示法如下:$$l_s=s_0+c_s\cdot\vecu$$$$l_t=t_0+c_t\cdot\vecv$$当$0\lec_s、c_t\le1$时,上述两式表达设最短距离两点分别为$s_j$、$t_j$,则有$$s_j=s_0+s_c\cdot\vecu$$$$t_j=t_0+s_c\cdot\vecv$$其中$s_c$、$t_c$为$s_j$、$t_j$两点所对应的标量。记向量$\vecw$=$s_j-t_j$,记向量$\vecw_0$=$s_0-t_0$,根据下图可以得出:$$\vecw=s_0+s_c\cdot\vecu-(t_0+t_c\cdot\vecv)$$即:$$\vecw=\vecw_0+s_c\cdot\vecu

c# 2016-07-29 发布
1 浏览

好用开源的C#快速开发平台

NFine是基于C#语言的极速WEB+ORM框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展,让Web开发更迅速、简单。NFine是一套基于ASP.NETMVC+EF6+Bootstrap开发出来的框架,源代码完全开源,可以帮助你解决C#以及.NET项目68%的重复工作,让开发人员远离加班。使用ApacheLicense2.0协议,采用主流框架,容易上手,简单易学,学习成本低。可完全实现二次开发、基本满足80%项目需求。可以帮助解决.NET项目70%的重复工作,让开发更多关注业务逻辑。既能快速提高开发效率,帮助公司节省人力成本,同时又不失灵活性。支持SQLServer、MySQL、Oracle、SQLite、Access等多数据库类型。模块化设计,层次结构清晰。内置一系列企业信息管理的基础功能。操作权限控制精密细致,对所有管理链接都进行权限验证,可控制到导航菜单、功能按钮。数据权限(精细化数据权限控制,控制到行级,列表级,表单字段级,实现不同人看不同数据,不同人对同一个页面

c# 2016-08-18 发布
AD 友情赞助
4 浏览

深入理解JQuery中的on方法(事件委派机制)

前言在开发项目的时候,JQuery的使用极其广泛,如果脑海中没有一点JQuery的基础知识,随性编写,那么就有可能造成bug问题。JQuery1.4版本之后新增了on方法,这个用得比较多,为此我特地做了个总结,有需要的伙伴们可以好好的看一下这篇文章。on方法是专门用来处理事件委派机制的,笼统的说就是解决在你Ajax或者Pjax之后事件无法绑定到新添加的元素上的问题的,很多JQuery中的bug问题也都出现在这。需求分析1、解决Ajax或者Pjax之后导致点击事件失效问题。效果图1、当初次点击checkbox时批量删除按钮可以正常显示出来,但是在Ajax或者Pjax之后就没法显示了。1.1、显示1.2、不显示原先代码1、直接input[name="selection[]"]点click绑定点击事件。此时,初次点击checkbox时批量删除按钮可以正常显示出来,但是在Ajax或者Pjax之后就没法显示了。/***批量删除隐藏显示按钮**/$('input[name="selection[]"]').click(

c# 2016-08-19 发布
7 浏览

C#[Win32&WinCE&WM]应用程序只能运行一个实例:MutexHelper

前言在开发应用程序时,通常只让程序运行一个实例。所以,就要判断程序是否已经运行。下面是我自己在项目中使用到,封装好的帮助类。有普通的C#应用程序和WindowsCE和WindowsMobile应用程序使用的方法。主要是通过System.Threading.Mutex类和Win32API来实现,下面就是各自的代码,调用示例在最后面。普通C#应用程序主要是Windows窗体应用程序和控制台程序。1.使用System.Threading.Mutex类参考:Mutex类(System.Threading)usingSystem.Threading;namespaceXY.Util.Helper{///<summary>///Mutexhelper///</summary>publicclassMutexHelper{///<summary>//

c# 2016-08-25 发布
2 浏览

集合数据处理(C#、JavaScript 和 Java)

Java丢了好多年,最近在拣起来,首先当然是了解这么多年来它的变化,于是发现了Java8的java.util.stream。在学习和试验的过程中,相比较于C#和javascript,有那么些心得,作文以记之。早些时间写过一篇《ES6的for..of和Generator,从伪数组jQuery对象说起》,和这个主题有点关系。其实我记得还有一篇讲C#的,没找到,也许只是想过,没写成,成了虚假记忆。前言之所以把C#、JavaScript和Java三种语言的实现写在一起,主要是为了放在一起有一个类比,可能会有助于理解。集合数据C#的集合数据基类是Collection<T>,它实现了ICollection<T>接口,而ICollection<T>又从IEnumerable<T>接口继承——实际上要讨论的内容都基于IEnumerable<T>接口。另外还有一个非泛型的IEnumerable接口,不过建议大家尽量使用泛型,所以这个非

c# 2016-09-12 发布
AD 友情赞助
4 浏览

csharp刷新示例

API接口链接usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingNewtonsoft.Json.Linq;usingQiniu.Util;usingNewtonsoft.Json;namespaceConsoleApplication1{[JsonObject(MemberSerialization.OptIn)]classRefreshMode{privatestring[]urls;[JsonProperty("urls")]publicstring[]Urls{get{returnurls;}set{urls=value;}}

c# 2016-09-20 发布
6 浏览

DevExpress Dashboard上手指南:绑定Oracle数据库

DevExpressDashboard设计器提供了连接数据库的DataSource向导,可以用里面的dataaccessAPI连接数据库,并用代码选择需要的数据。本教程以Oracle为例,讲解如何连接数据库并选择需要的数据。在DataSourceWizard创建DataSource1.单击DataSource工具栏中的NewDataSource按钮:2.在弹出的DataSourceWizard窗口中选择Database并单击Next:3.在下一个页面,选择Oracledataprovider并填写相应的参数:4.在下一个页面,选择是否保存用户资格证书:这里选择No并Next。5.设置好需要的连接参数后,单击Next然后设置如何获取数据。有两种方式:Query;通过单击RunQueryBuilder...按钮运行QueryBuilder。QueryBuilder允许你选择需要的tables/columns然后传递SQL查询结果到SQLString编辑器。在QueryBuilder

c# 2016-09-21 发布
2 浏览

理解 C# 泛型接口中的协变与逆变(抗变)

最近在看《C#高级编程(第九版)》这本书,看到了泛型接口这章。其中关于协变和逆变没太理解,讲得有点坑爹,网上查了许多资料,总算(感觉)弄清楚了,来这里记录一下。一、协变和逆变是什么?先从字面上理解协变(Covariance)、逆变(Contravariance)。co-是英文中表示“协同”、“合作”的前缀。协变的字面意思就是“与变化的方向相同”。contra-是英文中表示“相反”的前缀,逆变的字面意思就是是“与变化方向相反”。那么问题来了,挖掘机技术哪家强?这里的变化方向指的是什么?C#中对于对象(即对象引用),仅存在一种隐式类型转换,即子类型的对象引用到父类型的对象引用的转换。这里的变化指的就是这种子->父的类型转换。objecto="hello";//string(子类)类型的引用转换为object(父类)类型的引用协变与逆变虽然从名字上看是两个完全相反的转换,但其实只是“子类型引用到父类型引用”这一过程在函数中使用的两个不同阶段而已,接下来将详细说明这点。二、使用函数的不同阶

c# 2016-09-26 发布
AD 友情赞助
2 浏览

c# CsvHelper

Install-PackageLumenWorks.Framework.IOusingLumenWorks.Framework.IO.Csv;usingSystem;usingSystem.Collections.Generic;usingSystem.IO;usingSystem.Linq;usingSystem.Text;namespaceUtils{publicstaticclassCsvHelper{#regionConstants///<summary>///Definesthedefaultdelimitercharacterseparatingeachfield.///</summary>publicconstcharDefaultDelimiter=',';///<summary

c# 2016-09-28 发布
2 浏览

c# 冷存储示例

usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingAmazon.S3;usingAmazon.S3.Model;usingAmazon.Runtime;namespaceConsoleApplication2{classProgram{privatestaticstrings3Endpoint="https://cn-north-1-s3.qiniu.com";privatestaticstrings3Region="cn-north-1";privatestaticstrings3AccessKeyId="ak";privatestaticstrings3AccessKeySecret="sk";

c# 2016-09-28 发布
6 浏览

从 HTTP 到 HTTPS - IIS 部署免费 HTTPS

这篇文章首发于我的个人网站:听说-https://tasaid.com/,建议在我的个人网站阅读,拥有更好的阅读体验。这篇文章与博客园和Segmentfault共享。前端开发QQ群:377786580这篇文章主要讲述IIS8部署免费HTTPS。HTTPS是互联网web大势所趋。TaSaid最近把机房从香港迁移到青岛,趁着这次机会,观望并折腾了几天,在迁移中顺便完成了HTTPS的部署。这篇文章收录在《Said-从HTTP到HTTPS》系列:从HTTP到HTTPS-什么是HTTPS从HTTP到HTTPS-IIS部署免费HTTPS从HTTP到HTTPS-网站部署HTTPS中需要做的事情有哪些免费证书这里只介绍在TaSaid.com部署HTTPS中尝试的免费证书方案,部署在IIS8上。Let'sEncrypt沃通(wosign)(不推荐)本来在TaSaid.com迁移中尝试部署过沃通(wosign)的签发的免费证书,但是后

c# 2016-10-05 发布
4 浏览

c# 特性

想想看如果有一个消息系统,它存在这样一个方法,用来将一则短消息发送给某人://title:标题;author:作者;content:内容;receiverId:接受者IdpublicboolSendMsg(stringtitle,stringauthor,stringcontent,intreceiverId){//DoSendAction}我们很快就发现这样将参数一个个罗列到方法的参数列表中扩展性很糟糕,我们最好定义一个Message类将短消息封装起来,然后给方法传递一个Message对象:publicclassMessage{privatestringtitle;privatestringauthor;privatestringcontent;privateintreceiverId;//略}publicboolSendMsg(Messagmsg){//DosomeAction}此时,我们或许应

c# 2016-10-06 发布
10 浏览

ef-dynamic-schema-changes-using-database-first

http://chriseelmaa.com/entity...internalstaticclassDatabaseUtils{///<summary>///BuildstheconnectionstringforEntityframework.///</summary>///<returns></returns>publicstaticEntityConnectionBuildConnection(){varconfig=System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"];varbuilder=newEntityConnectionStringBuilder();builder.Provider=config.Provi

c# 2016-10-08 发布
2 浏览

译书《物联网实战指南》出版 | 新成就:翻译自己的英文简介

这本书有一个很长的故事,到今天算是走到了一个意想中的结局。从审阅这本书开始、英文版出版、翻译成中文就这样走了两年的时间,这是一本值得纪念的书籍。英文书名《LearningInternetofThings》,中文书名《物联网实战指南》。《物联网实战指南》简介简单的先上个简介啦~:本书从探讨流行的HTTP、UPnP、CoAP、MQTT和XMPP等物联网协议开始,并从实战角度介绍了现有的协议、通信模式、构架以及物联网安全的重要性。本书适合那些对物联网感兴趣的开发者和工程师阅读。那些对电子学、树莓派(RaspberryPi)或者卡片电脑有基本的了解(高中水平)以及有一些代码托管的编程经验的人,通过本书将会很快学到当前先进的物联网解决方案。简单的一名话就是:在RaspberryPi上使用C#开发物联网应用。我从这本书中,学到了相当多的东西——我写的《自己动手设计物联网》的一些知识点,如MQTT协议,也是从这本书上了解到的。还好我的书是用JavaScript写的,而且是以我的毕业设计为思路写的,中间加了个MQTT协议和CoAP协议

c# 2016-10-09 发布
2 浏览

http不使用Form表单发送文件数据和非文件数据(上传篇)

这里要说一下,本篇我重点说的是上传,至于下载,查看对应的下载篇在原来,文件的上传是使用form表单去提交,有的时候为了上传文件,还要专门为上传文件写一个form表单上传文件,十分的麻烦,探索宇宙已经很累了,哪有时间浪费啊!!^_^正式进入主题先看看怎么从html页面中发送文件,回答是:使用FormDataFormData使用h5新添加的一个对象,可以用来包装要发送的数据,一个例子<body><form><labelfor="">上传文件</label><inputtype="file"id="picture"/><inputtype="button"value="确认提交"onclick="confirm()"></form><script>functionconfirm(e){varx

c# 2016-10-17 发布
0 浏览

自做Windows上界面美观的PHP集成环境软件

界面展示一下:源码:SalamanderWnmp集成包下载原因平常工作中用Nginx比较多,网上虽然也有wnmp集成环境,但是感觉界面不好看,用起来不舒服,所有决定自己做一个吧。原料软件用的是C#,GUI框架是WPF(这个做出来更好看一点),先去官网下载PHP,用的是NTS版本的(因为这里PHP是以CGi的形式跑的),再去下载Windows版的Nginx和Mysql代码基类publicclassWnmpProgram:INotifyPropertyChanged{publicTextBlockstatusLabel{get;set;}//LabelthatshowstheprogramsstatuspublicstringexeName{get;set;}//LocationoftheexecutablefilepublicstringprocName{get;set;}//Name

c# 2016-11-04 发布
AD 友情赞助