使用嵌入资源实现单个EXE文件发布.net应用程序

作者:V君 发布于:2014-12-14 0:16 Sunday 分类:折腾手记

不管你是非托管还是托管还是混合DLL, 全都塞进去啦!

又是一次蛋疼的折腾经历, 不过还真有意思

点击查看原图

阅读全文>>

标签: 软件开发 C# DLL嵌入资源 程序打包

评论(0) 引用(0) 浏览(2851)

尝试写个QQ机器人

作者:V君 发布于:2014-10-29 21:22 Wednesday 分类:折腾手记

之前写kekeke的机器人还挺顺利的 直接小提琴+F12再爬爬脚本就摸出来了

现在, 一个蛋疼的ac揭示板常客建立了个群, 然后想出了个把聊天室和群串通的念头

阅读全文>>

标签: 软件开发 C# QQ 机器人

评论(2) 引用(0) 浏览(2678)

让Javascript运行在C#上 [Update3] 支持mono 支持ClrWrapper

作者:V君 发布于:2014-9-7 3:41 Sunday 分类:折腾手记

一提到在C#上运行Javascript, 很多人都会直接想到用 Microsoft ScriptControl 吧.

很遗憾这货不能跨平台, 于是又是一阵找啊找, 找到两个, 他们分别是 IronJS 和 jint . 

(后来还发现了 Jurassic 但已经没力去试了) 试了之后才知道爽, Mono也没问题!

上阵尝试之后, V君这次选择了 jint, 因为IronJS 在传递绑定对象时略为蛋疼.

上吧!

阅读全文>>

标签: 软件开发 javascript C# mono

评论(0) 引用(0) 浏览(2744)

Entity Framework 就是个坑

作者:V君 发布于:2014-8-9 13:59 Saturday 分类:折腾手记

前些天整到个 sqlite-net , 支持Linq的轻量级sqlite组件. 起初用着还顺手的

用着用着就马丹了 -- 不支持连表查询/复杂投影, 我了个去!

还是回到DataContext吧... 要么DbLinq 要么实体框架,前者之前用过知道略buggy.

是时候该上手EF了.

>>> 上手吧 <<<

■去Sqlite官网下载组件安装包

由于现在只用到.net4的级别就下了对应安装包

装好(x86/x64)之后发现设计器并没有增加提供程序, 后来才发现 原来vs2013需要4.5.1的才行

果断下一个来装,总算是见到2013的集成选项了,安装过程依次出现数个命令行窗口

最后一个停在Install.exe上,等了几分钟,命令行窗口总算消失了, 安装向导完成!

乖乖的, 数据提供程序出来啦!

点击查看原图

创建数据库连接时出现了莫名其妙的错误

点击查看原图

整了半天 各种版本与提供程序不兼容.. 并且EF还依赖于设计器生成的xml嵌入资源 -- 这跟嗨布馁没差别啊魂淡.

放弃治疗, 要么不做复杂投影, 要么回到buggy的dbLinq..


(偷偷更新:后来还发现了linq2db这货支持复杂投影也能自动生成实体类(T4), 用着还可以)

标签: 软件开发 C# 数据库

评论(0) 引用(0) 浏览(1832)

让mono也能用DynamicExpression::ParseLambda

作者:V君 发布于:2014-7-22 13:29 Tuesday 分类:折腾手记

网上一直传的反射 System.Web.Extensions 私有类

 System.Web.Query.Dynamic.DynamicExpression 

中的 ParseLambda 方法来实现动态lambda表达式

Assembly asm = typeof(UpdatePanel).Assembly;

Type dynamicExpressionType =
    asm.GetType("System.Web.Query.Dynamic.DynamicExpression");

MethodInfo parseLambdaMethod = dynamicExpressionType
   .GetMethods(BindingFlags.Public | BindingFlags.Static)
   .Where(m => (m.Name == "ParseLambda")
            && (m.GetParameters().Length == 2))
   .Single()
   .MakeGenericMethod(typeof(T), typeof(Boolean));

var func = (Func<stringobject[], Expression<Func<T, bool>>>)
    Delegate.CreateDelegate(
       typeof(Func<stringobject[], Expression<Func<T, bool>>>)
       , parseLambdaMethod
    );

在Windows底下一直好好的发挥作用

不过最近在mono跑了爆空指针, 或许是类名不同或者压根就没实现吧

不管了, 试着扒出M¥类库的代码看看能不能用吧.

过程略. (反编译,修正编译器生成标识符,切断依赖) 还挺顺利的 乂D

拿去用吧: System.Web.Query.Dynamic.cs.zip 尽管还整理的不够到位

(错误提示口胡和编译经过) 乂D


好吧, 原来dbLinq项目里也有 这玩意 , 用它吧, 较靠谱


这个月0博文消灭乂D

标签: 软件开发 C# 数据库 mono LINQ

评论(0) 引用(0) 浏览(2079)

Powered by emlog 去你妹的备案 sitemap