珂珂的个人博客 - 一个程序猿的个人网站

最新发布

[未分类]

数据库管理工具

admin 阅读(1210) 评论(0)

以前做的是下面这个样子的,采用Winform最近将它改为WPF的,以后做工具不用winform了....对流程进行了优化,将中部改为树形结构,可以选择存储过程函数,以前不能选择全部进行新建。数据库连接选择也改为WPF了新的主界面XAML<Windowx:Class="FYJ.Tools.DBTool.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/win [...]   阅读全文

[未分类]

WPF 自定义带Checkbox、图标 的TreeView

阅读(2404) 评论(4)

项目由Winform改为WPF,要用到TreeView并且需要让它带Checkbox和图标,默认是不带的。不过WPF有很强大的模板功能,我们可以自己来实现,难点事各种级联选择和展开。 大部分参照了2位大神的文章,我做了一小部分改动。原来的控件选择状态只能是false或true,我加入了第三种状态Null,就是部分选中状态。另外在Model 里面加了一个 Tag属性,还完善了ItemSource 为null点右键菜单报错的判断。 [...]   阅读全文

[未分类]

通过配置创建IOC 实例

admin 阅读(1384) 评论(0)

基于分层的接口开发,我们需要一个IOC 来管理,到处都 new对象显然是不明智的做法。虽然有很多第三方IOC框架,不过还是自己来实现一个简单的。 考虑到性能问题,不能每次都重新创建,需要一定的缓存技术。asp.net 中有一个缓存类System.Web.Caching.Cache,在winform或是wpf中也可以使用,但要引用System.Web.dll 这个dll是为web设计的,用来引用在桌面应用程序里面,似乎不太合适, 经过搜索,知道了微软在net 4 里面添加一个缓存类MemoryCache 类。它们都能监测文件的改变,所以改变ioc的配置文件都会实时生效。 我把IOC配置文件 [...]   阅读全文

[未分类]

阿里云同步工具

admin 阅读(1745) 评论(0)

为什么开发这个工具呢,因为自己网站的图片是存储在阿里云上的,但是后台管理确实直接传到本地的,不直接传到阿里云,因为网络不好,上传会很费时。 阿里云有提供官方的sdk工具,不过没有达到我想要的效果,我就是简单的本地文件是什么结构阿里云上就是怎么样的。之前是按数据库来查询的,因为我上传文件数据库会有记录,还有个字段标志是否上传到阿里云,不过后来改善后不需要数据库,直接做成了文件系统同步。 原理很简单,就是递归本地目录,记录文件的路径和MD5值,再去阿里云查询如果不存在则上传,如果MD5不一样也上传,如果阿里云有但是本地没有则可以删除阿里云的文件(可选)。 代码还是有点多,我用WPF做的,需要特 [...]   阅读全文

[未分类]

说说我的博客由来

admin 阅读(1220) 评论(0)

然后某个时间又想实现一个站点多个域名展现不同内容,因为只有虚拟空间,不利于架设多个站点,于是又改版成多用户博客系统。后来有云服务器后又拆分了。反正分分合合、做做停停终于到现在这个样子.... [...]   阅读全文

[未分类]

目录同步工具

admin 阅读(1478) 评论(0)

经常需要将本地的网站发布到服务器上,觉得太麻烦,有时经常需要整个目录拷贝,于是就诞生了这个目录同步的工具。该工具需要一个服务端配合,我这里就用asp.net 的 ashx处理,有能力的可以改成TCP 传输。原理就是对比服务器文件的SHA1,如果相同就不用上传了,所以能节省不少时间。考虑到方便,我将配置文件写成了xml 这样每次选择对应配置就行了,配置还加入了一个忽略文件列表。我自己的网站也是这样上传的。服务端代码,主要处理列出所有文件数据、上传、删除。usingSystem; usingSystem.Collections.Generic; usingSystem.IO; using [...]   阅读全文

[未分类]

winform一键发布工具

admin 阅读(1476) 评论(0)

由于现在做的系统是基于Winform的,在服务器上需要发布,挺麻烦的,而且改动一点点就得全部上传,忍耐了很久终于做了一个一键发布的工具。原理跟目录同步差不多,只不过要做一些特殊处理。先获取本地的最大版本号,再请求服务器更改,服务器把上面最新的版本复制一份到新版本文件夹(目的是保留老版本)。然后再跟目录同步工具一样,但要排除之前的版本文件夹。同样,需要一个服务端ashx文件配合usingSystem; usingSystem.Collections.Generic; usingSystem.IO; usingSystem.Web; usingSystem.Linq; usingSys [...]   阅读全文

[未分类]

FYJ.Blogs更新记录

admin 阅读(2480) 评论(2)

2014-6-15本来之前是用静态html文件作为文章缓存,当有几千篇文章的时候,发现超出虚拟空间文件最大个数限制。于是准备用SQLite 但是发现64位下很有问题,后来改成一个叫STSdb4 的本地nosql 来缓存。 [...]   阅读全文

[未分类]

数据库同步工具

admin 阅读(1848) 评论(1)

由于需将本地数据库同步到服务器上,其实微软有订阅和发布,不过我是没搞清楚,我只需要简单功能。之前的版本是这样的后来发现有局限性,比如新增表后需要改代码重新编译,而且每次需要选择数据库后来设计成了可配置的其实原理很简单,已经可以达到我的目的了,两个数据库的表必须完全一样,当然列的顺序没关系,而且必须有一个唯一主键和一个最后修改时间列,时间列用来判断本地的数据是否比服务器新。先查找本地有的主键而且服务器没有则需要新增,如果本地有服务器也有但本地时间较新则需要update,如果服务器有主键而本地不存在则需要删除服务器上的。这个对于多种数据库都可以。前台XAML代码<Windowx:Class [...]   阅读全文