在NHibernate中经常遇到继承与关系数据库的ORMapping的问题,我之前的一篇博客(http://www.cnblogs.com/studyzy/archive/2011/08/16/2140675...使用单表继承可以不用Join多个表查询效率高,而且在Domain Model的属性提示到父类或者下降到子类时,数据库模型不用更改。...其缺点就是一个数据表的列比较多,而且很多列为空,不过现代的数据库对空列的压缩处理已经比较好了,不会产生大量空列造成的性能问题和磁盘空间的浪费。...在NHibernate中经常会遇到通过父类的Repository来查询子类的情况,比如现在有一个抽象的Employee对象,下面有OfficeUser和Teacher两个具体的对象,这两个对象都有其特有的属性...下面分别用QueryOver、Criteria和HQL来说明: QueryOver查询Employee表中的所有Teacher: Session.QueryOver().Where(
在 NHibernate 的参考文档中, 对 ISession 的描述如下: A single-threaded, short-lived object representing a conversation...也可以在实体类的 hbm 映射文件中配置使用二级缓存, 不过在 hibernate.cfg.xml 文件中统一配置是推荐的做法。...[CategoryID]=@p0; @p0 = 1 [Type: Int32 (0)] 从测试用例的输出可以看出, 二级缓存时可以在不同的 session 之间共享。...从二级缓存读/写数据 Refresh:向二级缓存写数据,想不从二级缓存读数据,通过在配置文件设置 cache.use_minimal_puts从数据库中读取数据时,强制二级缓存刷新 CacheRegion...以上是在项目中用到的二级缓存相关知识的整理, 肯定不完整, NHibernate 的缓存还有更多的地方需要挖掘。
在SQL Server中经常会用到模糊匹配字符串的情况,最简单的办法就是使用like关键字(like语法http://msdn.microsoft.com/en-us/library/ms179859....最常见的一个例子就是在搜索框中,用户输入了一部分关键字,系统可以通过用户的输入进行左匹配,找出相关的结果列出来。...假设我们现在有个表YCMRSALE,其中有个字段MATNR存储了料号信息,如果我们要从这个表中查询出以AB开头的料号,如果使用NHibernate,那么我们常用的写法有: //QueryOver的写法...但是如果用NHibernate就要麻烦点了,我们必须要判断用户输入的字符串里面是否有特殊转移符,如果有,那么就需要进行替换,而且C#查询语句也有所不同。...Ugly,但是却可以用上YCMRSALE表上对MATNR建立的索引,所以效率较高。
在 NHibernate 的参考文档中, 对 ISession 的描述如下: A single-threaded, short-lived object representing a conversation...也可以在实体类的 hbm 映射文件中配置使用二级缓存, 不过在 hibernate.cfg.xml 文件中统一配置是推荐的做法。...[CategoryID]=@p0; @p0 = 1 [Type: Int32 (0)] 从测试用例的输出可以看出, 二级缓存时可以在不同的 session 之间共享。...从二级缓存读/写数据 Refresh:向二级缓存写数据,想不从二级缓存读数据,通过在配置文件设置cache.use_minimal_puts从数据库中读取数据时,强制二级缓存刷新 CacheRegion...以上是在项目中用到的二级缓存相关知识的整理, 肯定不完整, NHibernate 的缓存还有更多的地方需要挖掘。
具体包括:.NET (Core): 全面支持从经典的 .NET Core 到最新的 .NET 10 及未来版本。...它并非一个全功能的 ORM,而是一个高效的扩展,能将 ADO.NET 的查询结果极其快速地映射到你的 C# 对象上。...优点功能强大:支持二级缓存、复杂的对象映射、拦截器、丰富的查询方式(HQL, Criteria, QueryOver),几乎能应对任何复杂的 ORM 需求。成熟稳定:经过了十几年的实战检验,非常可靠。...缺点相对年轻:作为一个较新的框架,其社区和生态系统仍在成长中。适用场景寻求性能和开发效率完美平衡的项目。希望从 Dapper 迁移到功能更丰富的框架,或从 EF Core 迁移到性能更好的框架。...ServBay 通过其一键安装和多版本管理功能,极大地简化了在 macOS 上的 .NET 开发环境部署。它让你能够轻松尝试上述所有框架,从而找到最适合你项目的那一款。
,MySQL-FRONT ,Connector/Net(选择.Net&Mono) Nhibernate包可以在VS2015中下载 ,对MySql操作,我用的是MySQL-FRONT,注意要想实现和数据库的链接...嗯,如果能够运行成功,说明我们的步骤都是正确的,这就是一个简单的测试,测试成功,说明我们的VS与MySql数据连接是没有任何问题的,只要把该引入的都引入了就不会报什么异常错误之类的,接下来将用C#代码和...Nhibernate包来实现一个很简单的对数据增删改查的操作,这一次需要用到我们之前下载的Nhibernate包里面的文件,全部dll文件引入之后,“引用”下面应该是这样的: ?...然后我们在工程下面新建两个文件夹:Model文件夹用来存放数据库表类和映射类,还有一个Manger类用来存放对数据库执行增删改查操作的类。...我们在Model文件下新建一个名字为APengPhao的类,这个刚好也是和数据库表名相同的,请看这个类的代码: using System; using System.Collections.Generic
在内网穿透领域,frp 无疑是一个里程碑式的开源项目。作为 frp 的长期用户,我曾经对其简洁高效的设计推崇备至。然而,在实际生产环境中经过多次"血泪教训"后,我最终选择了迁移到 ZeroNews。...面对企业级客户的安全合规要求,原生的 frp 显得力不从心。二、破局:ZeroNews 在设计理念上的革新1....运维成本下降通过对比我们团队在迁移前后的时间投入:3. 开发体验改善对于开发团队来说,最直观的感受是调试效率的提升:再也不用担心因为网络问题导致的联调阻塞。四、思考:什么情况下应该考虑迁移?...虽然 ZeroNews 在很多方面表现优秀,但技术选型还是要结合实际需求:建议迁移到 ZeroNews 的情况: ● 团队规模扩大,需要更精细的权限管理 ● 业务对稳定性要求提高,需要企业级保障 ● 运维资源紧张...从"单一"到"生态":与 DevOps 工具链的深度集成结语技术选型没有银弹,但在当前的企业级内网穿透需求背景下,ZeroNews 确实在 frp 的基础上实现了显著的突破。
很早之前写过一篇博客:Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本的开发环境(亲测),当时使用的Win7系统,Visual Studio开发版本是2010,Cocos2d-x对应的版本是...,关于在Windows10+Coco2d-x 4.0+VS2017搭建Cocos2d-x 4.0的开发环境,可以参考我之前的文章:Windwos10下使用VS2017搭建cocos2d-x 4.0开发环境...,如下图所示: 从上图可以看出,Cocos2d-x 3.17.2在Windows上的环境要求是:Window7以及以上版本,Python2.7.5以及以上版本(注意:不能使用python3以及以上版本...4.0开发环境,很有很早的一篇博文:Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本的开发环境(亲测) 四、参考资料 https://www.cocos.com/cocos2dx...cocos2d-x 3.17.2环境搭建 Windwos10下使用VS2017搭建cocos2d-x 4.0开发环境 Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本的开发环境(亲测
最近接手离职同事的项目,交接进行了30分钟,牛人直接给了我一个.7z的压缩包,然后电话不接,QQ消息不回,失踪了。...没法,将压缩包解压出来之后,打算编译一个版本准备先发布到服务器上去 项目环境: VS2010 + MVC3 + ORACLE, 服务器环境: PL/SQL Developer Version 7.1.1.1339...11.2.0.1.0 - Production NLSRTL Version 11.2.0.1.0 - Production X86下本地测试一切正常, 于是乎编译X64往64位Server 2008服务器上放的时候发生错误...,问题依旧, 2>我在程序池中设定兼容32位,然后本地BUILD 一个x86的包部署,不但所有DLL无法加载,老的版本也跟着报错 3>改回设定默认:不兼容32位,然后本地BUILDX64,ANYCPU的包部署...,问题依旧, ORA-12154: TNS:could not resolve the connect identifier specified Description: An unhandled
本书中的所有示例均基于C ++ 11标准。 在测试期间,所有编译器都配置为启用对C ++ 11的支持。 大多数示例都可以在Windows,Linux和OS X上运行,但有一些依赖于平台。...(亲测) 8、一些C++库在VS2017和CentOS7下的编译和安装、使用 CentOS7下编译安装libmodbus库 Windows10中VS2017环境下使用libmodbus库Modbus TCP...读取设备的数据 CentOS7下编译yaml-cpp库 Windows10下使用VS2017编译和使用yaml-cpp库 VS2017编译SNMP++ VS2017中使用CppSQLite报出编译器错误...Visual Studio2017中使用boost1.69.0 在CentOS 6.5上构建Apache Thrift 使用rapidJson C++库生成JSON字符串 CentOS7下编译yaml-cpp...这个库在Windows下Visual Studio环境下还是比较好用的,就是从2011年后就好久没更新过了。
抱歉问题解决前没留截图,总之就是使用宏相关的功能都打不开,会弹窗报错,英文,大意是【一个或多个组件不存在,请尝试重装】。...尝试过: 修复安装VS2010 按此文照做:https://visualstudioextensions.vlasovstudio.com/2014/02/13/visual-studio-2010-macros-stop-working-after-february...-2014-windows-update/ 都不行,印象中在尝鲜VS2017前在添加/删除程序列表中见到VS2008字样的N多东西,感觉应该是老版残留,就都卸了,于是死马当活马医,到MS下个2008集成版装上
但是公司的电脑系统是XP的,最高也只能安装VS2010 解决方案的版本兼容性就有了问题。之前可能要新建一个VS2010空白解决方案,然后再创建相应版本的工程 然后复制代码文件。才能解决问题。...不过,现在不用了,因为VS2010 SP1+版本可以和VS2012兼容解决方案 这个在相同的操作系统环境下是没有问题的。完好兼容。...但是从Window8/windows7迁移到XP系统上就会出现 一下问题:需要缺少的Web组件才能进行加载。 ? 可惜VS2010只能提示到这里了,无论点击是/否,对话框消失,就不会再有任何反馈。...在同样的系统环境下又不存在这样的问题?...于是用VS2010新建一个web项目,卸载项目,编辑项目文件(.csproj文件),同时对VS2012创建的Web项目也进行编辑项目文件(.csproj文件) 进行对比,发现唯一可能造成差异的也就是关于
这是我4月份发在donews博客上的文章,现在都转到博客园来,风满袖希望进一步阐述你的架构,我就将这篇文章转移到博客园。...在已有的众多开源项目中选择若干优秀的项目进行整合。“站在巨人肩膀上”是牛顿有一句名言.,同样适合我们的IT行业。...1、 开源框架选择: 数据持久层Nhibernate和IbatisNet这两个都是非常优秀的数据持久层,Nhibernate是优秀的Hibernate的dotNet移植版本,在开源社区具有非常高的人气,...层上如何得到Nhibernate的Session和IbatisNet的SqlMapper?...Domain model负责表示问题域的数据,DAO使用Nhibernate/IbatisNet持久化数据以及查询.
丰富的控件和插件体系。基于上覆盖了移动开发中需要的所有控件,另外可以自定义开发插件,例如指纹、RFID、条码扫描等。 5. 支持绝对和流式布局。可以满足各种界面样式要求。...访问 https://www.smobiler.com 在下载界面下载Smobiler Designer安装包(支持VS2010到VS2017),下载后双击安装。 2....从工具栏的 Smobiler Components 里拖动 Button 控件到窗体中,在右边的属性栏上修改 Text 属性为 Hello World 4....双击 Button 控件,在Button的Press事件中,写上Message.Show(“Hello World!”); 点击F5运行,然后会弹出一个包含二维码的界面。 5....即可看到界面,然后点击一下界面上的Hello World,在界面是即可看到 Hello Word的提示框。 完成一个移动开发,就是这么简单。
自己编写了一个头文件 ,在主函数中通过#include引用时出现了 无法打开源文件的问题,通过网上查阅,大多数人的做法是:右键项目->属性->VC++目录->包含目录->下拉剪头->编辑,在对话框中加入...问题完美解决! 但是原理是啥?...通过进一步研究,发现问题是自己混淆了 #include”xx.h” 和 #include 的用法, #include 表示直接从编译器自带的函数库中寻找文件,编译器从标准库路径开始搜索....xxh include”xx.h” 表示先从自定义的文件中找 ,如果找不到在从函数库中寻找文件,编译器从用户的工作路径开始搜索 xx.h 如果我们通过的方式引用自己编写的头文件,必然会出现无法找到与源文件的问题...,因为我们的文件放在了用户目录下,上面的解决办法本质上是通过将会用户目录追加到编译器搜索范围内,其实通过将换成” “就可以解决问题了。
Entity Framework带给我们的不仅仅是操作上的方便,而且使用上也很是考虑了用户的友好交互,EF4.0与vs2010的完美融合也是我们选择它的一个理由吧。...相比Nhibernate微软这方面做的的确是很不错。 下面我将使用CodeFirst方式来做个简单是实际例子与大家分享。...第一步:创建控制台项目 第二步:在项目上右击添加Ado.Net 实体数据模型 如图所示: 第三步: 选择生成实体的方式 "空模型" 如图所示: 第四步:添加EF实体 从工具栏中拖一个实体到edmx设计器中...,并命名为Student,然后在属性页中修改此实体的实体集名称为Student,并添加两个标量属性Name,Age【复杂属性,和导航属性在后面的文章我会介绍】如下图所示: 第五步:根据模型生成数据库...注意是在edmx空白处右击,选择根据模型生成数据库,并选择我们要创建的数据库连接。
很早之前写过一篇博客:Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本的开发环境(亲测),当时使用的Win7系统,Visual Studio开发版本是2010,Cocos2d-x对应的版本是...二、编译安装Coco2d-x 4.0的准备工作 安装VS2017、cmake 3.11.1,Python 2.7.14 本次使用的系统为Windows10操作系统,使用VS2017,Cmake的版本为...Studio 2015之后的版本,我目前使用的是VS2017开发工具,这个自己去微软官网下载。...,工程生成在WorldWorld中win32-build中,如下图所示: 另外,可以在HelloWorld\win32-build\bin\HelloWorld\Debug目录下找到编译生成的HelloWorld.exe...双击执行HelloWorld.sln,在VS2017中启动工程。然后在HelloWorld上右键->设为启动项目,如下图。Ctrl+F5运行程序。
--config RelWithDebInfo --target install 在最后谈谈动态库和静态库的问题。动态库和静态库各有优缺点,这里就不细致的论述了。...但是在Windows下笔者还是倾向于优先使用动态库。一直以来,二进制兼容的问题一直是困扰C/C++编程的重要问题。...比如说,你用VS2010编译的动态库在VS2013的环境下可能是无法使用的,这还是同一家产品的不同版本就会造成这个二进制成果的差异性问题。...笔者也确实发现很多产品的MSVC的预编译成果能够在MSVC环境中混用了。比如VS2017编译的Qt就能够在VS2019的环境下正常使用。...不过这些能混用的成果一般都是动态库,也就是动态库的二进制兼容特性更好一点。至于静态库,文档中宣称静态库也可以做到,但是笔者实测至少这个基于VS2017的minizip静态库在VS2019中用不了。
进入其上的子目录\js\src,创建目录build_OPT.OBJ 3. 输入命令,autoconf-2.13 4. 进入build_OPT.OBJ 目录,输入 .....本人下载的源码,不支持在vs2015||vs2017 上编译, 这是在配置|编译错误信息里明确指出来了。 我也没有安装vs2013,但我机器上有vs2010。...所以,我是用vs2012 编译这一切的,但是你下载那个 MozillaBuild-24..2.0 安装后可是没有提供vs2010 配置项 的噢,这个是我自定义来的,你也可以从更早的版本里 或得。...在我这里如果不加入此项 目做编译,那么生成32 位和64 位静态库js_static.lib 的过程没有问题。只是最后的库大小完全一样,我深 表怀疑是否真的生成了64 位版本。...另外,在CSDN上还有本人写的另外一篇文章,介绍windows平台上编译与使用lua(语言)开源项目的文章,感兴趣的话可以去看看 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。
预计在2019年9月正式发布。...C# 在 3.0 版和 5.0 版对面向对象的语言添加了主要的新功能。 在 6.0 版中,它不再推出主导性的杀手锏,而是发布了很多使得 C# 编程更有效率的小功能。这些功能每一个都很有趣。...C# 4.0 版很难达到 3.0 版的创新水平。 在 3.0 版中,C# 已经完全从 Java 的阴影中脱颖而出,崭露头角。 很快成为一种简洁精炼的语言。...我们通常认为 C# 版本的杀手锏是查询表达式,也就是语言集成查询 (LINQ)。LINQ 的构造可以建立在更细微的视图检查表达式树、Lambda 表达式以及匿名类型的基础上。...Framework 3.0 VS2008 2.0 C#3.0 2007-11-19 .NET Framework 3.5 VS2008 2.0 C#4.0 2010-4-12 .NET Framework 4.0 VS2010