分类: .Net

[作品分享] APP开发者神器——图标图片工厂

一直不明白三大移动平台APP开发时,为什么都要开发者自己提供各种不同尺寸规格的图标图片,这不应该是我提供一个最高分辨率图片,然后IDE自动实现高质量缩小制成各种规格的图片就行了吗? 害得我每次做APP图标时都得开着Photoshop一次次地导出各种尺寸规格,现在终于不堪其烦,决定自己做个工具来搞定这破事: 一口气生成三大平台各种各种规格的图标图片: 而且支持自定义背景色、目录名、文件名、文件格式、尺寸、是否应用背景、圆角矩形半径,只要按我上面的格式添加规则即可(设置自动保存,下次不用重复添加)。 生成的效果就是这样的(以下是Android平台圆角矩形图标版): 这样能省下大把时间和精力,如此好用,便不独享了,下载: 链接:http://pan.baidu.com/s/1hssPJrY 密码:z9g1 其实本来我想做成UWP版好发行的,但是测试下来UWP里的图像处理功能太弱了,缩放图片遍地狗牙,根本没法用,于是还是用WPF来做了,图像处理用的是GDI+ 分享或转载本博客站点内的所有原创内容时,都必须遵循此协议: 姓名标示-非商业性-相同方式分享 4.0 国际 (CC BY-NC-SA 4...

更多

解决Asp.Net网站发布时总出现找不到类或方法错误的问题

出现这种问题通常都是在Git合并代码到当前解决方案后出现的,这种情况下Visual Studio里本机调试没有任何问题,但是发布就是不行。 其根本原因在于Web项目引用的的其它项目发生了改变,却没有在发布时重新编译。 解决此问题的方法就是把编译方式改为Release,然后清理解决方案,再重新编译,再进行发布就行了。 因为网站发布时都是采用Release方案的,继而会直接使用Release方案已生成的dll文件,所以有时候就会把旧的dll直接拿去发布,这样就会找不到新增的一些类或方法等引用。 为了准确判断是否正确发布,请检查每个项目对应的dll程序集版本是否皆为最新,以确保部署不会出现问题。 分享或转载本博客站点内的所有原创内容时,都必须遵循此协议: 姓名标示-非商业性-相同方式分享 4.0 国际 (CC BY-NC-SA 4.0) 同时必须附加指向本文页面或本博客首页的超链接。 除此之外的转载、分享方式都必须征得本博客作者的授权,否则将会诉诸法律。

更多

实现UWP应用多语言功能的正确方式

今天尝试将SkyD Regex升级为多语言,文本量很少,感觉没多少工作量,结果折腾一晚上才算搞定,又是他妈微软的各种坑,真尼玛恶心死我了。 先说Multilingual App Toolkit 4.0,其用法是:安装后,先设置项目为启用状态,创建一个主语言(Package.appxmanifest中指定),然后再创建好其它语言目录和资源文件,然后通过Multilingual App Toolkit的工具对主语言翻译,保存并重新编译程序,然后它就会自动填充你的目标语言的资源文件了。 然而我用时根本不管事,我按下图方式创建了资源: 以简体中文为主语言,用Multilingual App Toolkit的工具翻译好其他两个语言,保存,重新编译,再看别的语言资源文件根本没变化,我删了它们的资源文件也没用,看输出信息提示找不到一串文件,我把提示的路径复制到资源管理器地址栏里,尝试都能正常打开,可以肯定不是缺文件造成的,所有路径也都是英文,不会有字符问题。 于是我就卸载了这微软的傻逼官方Toolkit,手动翻译好了另两种语言,然后在App.xaml.cs里分别手动指定语言为英文和繁体中文进行测试:...

更多

实现带图片迁移WordPress博客

本博客现已从新浪SAE迁出,记录一下带图片迁出的实现方式。 首先应当去后台导出所有内容: 下载后得到的是WordPress eXtended RSS文件,扩展名是xml。 然后去SAE的后台把源码全下载下来。 由于SAE的WordPress好像是修改版的,我索性从官网下了个新版的,上面下载到的源码里我只是用以导入主题、样式、插件。 然后需要编码下载一下原博客中的图片,这里只要写一个简单的爬虫,爬遍所有文章,取得其中的图片就可以了。 我是用.Net Winform程序实现的: 图上的两条正则表达式: http://skyd.sinaapp.com/archives/\d+ http://skyd-wordpress.stor.sinaapp.com.+?(png|jpg|jpeg|gif|bmp) 注意:我的文章URL是以数字命名的,你的如果不是就自己改改这里的表达式。 主要代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using Sy...

更多

MongoDB实现基于关键词的文章检索功能(C#)

我的实现目标是: 可以通过一个或多个关键词搜索到文章。 可以通过文章的关键词列表查询到其相关文章。 查询到的结果依据相关程度降序排列。 查询速度要够快。(理论上关键词检索比全文检索要快很多的) 在网上找了一大圈,就没有一个靠谱的方法,基本都是只能传入单词来检索,而且基本都没有提供C#驱动版本的代码,于是乎自己研究出了这个实现方案: 首先要求使用标签、分词、关键词提取组件对文章对应的关键词进行提取,然后作为数组格式,存入文章的Keywords字段中。 核心检索代码: /// <summary> /// 根据关键词获取文章编号与标题映射。 /// 注意:此方法会返回最为匹配的若干个项目,并根据匹配程度降序排列,即使是没有任何关键词匹配项,也会返回若干个结果的。 /// 另需注意:如果是根据文章关键词来查询,一般来说其中一定包含原文章,所以应该把期望获得的数量加1,并在结果中移除原文。 /// </summary> /// <param name=”limitNum”>数量上限</param> /// <param name=”keywo...

更多

Cache.Add vs Cache.Insert

ASP.Net中Cache对象的两个方法的差异对比。 分享或转载本博客站点内的所有原创内容时,都必须遵循此协议: 姓名标示-非商业性-相同方式分享 4.0 国际 (CC BY-NC-SA 4.0) 同时必须附加指向本文页面或本博客首页的超链接。 除此之外的转载、分享方式都必须征得本博客作者的授权,否则将会诉诸法律。

更多

在 Win10 UWP APP 项目中移除英文语言

本文以以 Windows 10 平台的 HTML+Javascript 项目为例。 在package.appxmanifest文件的设计器中设置默认语言为中文(此处为繁体中文): 这事如果直接编译打包提交的话,你会看到程序包信息中语言里仍然有英文: 并且此时仍然强迫你提交英文版的说明及截图,而如果你没做英文语言内容的话是无论如何也不会让你成功发布的。 此时应把“WinJS/js/en-US”目录删除,然后再编译发布,这样就成功剔除了英文语言,上传后就只有中文了: 起初我还尝试过同时修改Package.StoreAssociation.xml中的en-US相关的代码,但是这个文件修改起来好像没什么意义,只要一打包,它就恢复原来的状态了。 分享或转载本博客站点内的所有原创内容时,都必须遵循此协议: 姓名标示-非商业性-相同方式分享 4.0 国际 (CC BY-NC-SA 4.0) 同时必须附加指向本文页面或本博客首页的超链接。 除此之外的转载、分享方式都必须征得本博客作者的授权,否则将会诉诸法律。

更多

.Net实现Log4Net记录日志到MongoDB的源码分享

Log4Net是个很方便的日志记录工具,起初我是用txt形式记录日志的,这种方式简单、直接,非常方便。 但考虑到将来可能会有大量的日志,或者说还需要做一些日志查询功能,那么txt形式显然就不合适了。 于是就要考虑用数据库来记录日志,鉴于我常用的数据库为MongoDB,而Log4Net默认是不支持MongoDB的,又不想为个日志再装新数据库,便开始寻找解决方法。 所幸我找到了这样一个开源项目—— log4mongo:https://github.com/log4mongo/log4mongo-net 不过它存在两个问题: 目前支持的MongoDB官方C#驱动版本为1.8.2,而目前的官方驱动已经更新到2.0+了,新版发生了一些变化,旧代码已经不能用了。 并不是以强类型存入数据库,而是自定义的BsonDocument,这在C#中查询和使用起来非常不方便。 这样只能自己动手改造一下了。 首先我将官方驱动版本升到了2.0.0.828,并且修正了原来跑不通的旧代码。 其次构建了Log、LocationInformation、ExceptionInformation三个实体类,来保存完整的日志信息...

更多

Visual Studio 局域网内测试ASP.Net网站项目的方法

Visual Studio(以下简称VS)对网站项目的调试默认只能本机访问,这样就没法实现移动设备真机测试了,解决办法如下: 首先以管理员模式启动VS,打开项目,启动调试。 然后去系统右下角右键点击IIS Express的图标,选择“显示所有应用程序”: 这时点击自己的网站名称,再点击配置文件的链接: 用VS打开此配置即可,找到自己网站的site节点,注意里面的bindings子节点,按照其中localhost的格式添加一个本机的局域网IP地址上去: 保存后关闭VS,这时记得去关闭Windows的防火墙,或者在防火墙的入站规则中加一个允许对应端口的TCP规则: 再以管理员模式启动VS,再运行调试,就能够从其它设备访问了。 分享或转载本博客站点内的所有原创内容时,都必须遵循此协议: 姓名标示-非商业性-相同方式分享 4.0 国际 (CC BY-NC-SA 4.0) 同时必须附加指向本文页面或本博客首页的超链接。 除此之外的转载、分享方式都必须征得本博客作者的授权,否则将会诉诸法律。

更多

MVC5配合Ninject的使用范例

网上Ninject的资料大都是MVC3或更早的,少有的几个MVC5的写的也挺麻烦的,又改 Global.asax 又自建解析器类什么的,自己尝试了一下,发现其实现在的Ninject的MVC5插件配置真的非常简单了,下面就来演示一下操作步骤: 首先创建Web项目: 类型设为MVC: 然后管理项目的NuGet包: 搜索Ninject,安装Ninject.MVC5 PS:NuGet服务器经常被墙,不成功就果断挂VPN吧。 可以看到安装程序包列表,接受之: 然后创建测试用的类型,首先是 I武器 接口: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MVC5配Ninject测试 { public interface I武器 { string 说明 { get; } } } 然后是实现接口的 手里剑 类: using System; using System.Collections.Generi...

更多