pdf.net

.NET ORM 的 “SOD蜜”--零基础入门篇

試著忘記壹切 提交于 2020-08-09 21:39:56
PDF.NET SOD框架不仅仅是一个ORM,但是它的ORM功能是独具特色的,我在博客中已经多次介绍,但都是原理性的,可能不少初学的朋友还是觉得复杂,其实,SOD的ORM是很简单的。下面我们就采用流行的 Code First的方式,一步步来了解下。 一、准备工作 1.1,添加SOD包引用 首先建立一个控制台项目( 支持.NET2.0的项目 ),并使用程序包管理器添加PDF.NET SOD的程序引用: PM> Install-Package PDF.NET.SOD 更多详细使用信息说明,请参考nuget 网站说明 https://www.nuget.org/packages/PDF.NET/ 1.2,配置数据连接 新建一个控制台项目,添加一个应用程序配置文件,增加一个数据库连接配置: <? xml version="1.0" encoding="utf-8" ?> < configuration > < connectionStrings > < add name ="local" connectionString ="Data Source=.;Initial Catalog=LocalDB;Integrated Security=True" providerName ="SqlServer" /> </ connectionStrings > </ configuration >

《SOD框架企业级应用数据架构实战》新书简介和预定

耗尽温柔 提交于 2020-08-07 05:30:19
SOD框架“企业级”应用数据架构实战 ---- 致敬平凡的程序员! 历时两年写成, 两大MVP: 张善友、 刘冰(宇内流云) JAVA技术专家 申毅 联合推荐! PDF.NET 框架简介 一分钟了解SOD框架 内容简介 全书主要以系统架构师的角度,讲述应用系统中所有有关数据问题的解决方案,这些方案小到一个具体的API使用,大到整个系统架构的设计,从解决方案的合理性,易用性和扩展性来逐步设计扩展,一步一步分析当前遇到的问题,给出这类问题的最佳实践的解决方案。通过这个问题的分析解决过程,引导普通的开发人员脱离繁琐的枯燥无聊的数据“增删改查”工作,完成从菜鸟到专家的蜕变过程。 订购方式 订购《SOD框架企业级应用数据架构实战》的朋友,请在下面链接的页面内容中留言回复,写上您的电子邮寄地址,等书上市后作者会与您联系详细邮购信息: 博客园网友 CSDN网友 PDF.NET会员 了解本书内容和如何订购的详细信息,请移步SOD新书预定专题网站: “ 《SOD框架企业级应用数据架构实战》 新书简介和预定”。 感谢大家的支持! 深蓝医生 2020年6月10日 来源: oschina 链接: https://my.oschina.net/u/4255339/blog/4390223

《SOD框架企业级应用数据架构实战》新书简介和预定

怎甘沉沦 提交于 2020-08-05 18:36:01
SOD框架“企业级”应用数据架构实战 ---- 致敬平凡的程序员! 两大MVP: 张善友、 刘冰(宇内流云) JAVA技术专家 申毅 联合推荐! PDF.NET 框架简介 一分钟了解SOD框架 内容简介 全书主要以系统架构师的角度,讲述应用系统中所有有关数据问题的解决方案,这些方案小到一个具体的API使用,大到整个系统架构的设计,从解决方案的合理性,易用性和扩展性来逐步设计扩展,一步一步分析当前遇到的问题,给出这类问题的最佳实践的解决方案。通过这个问题的分析解决过程,引导普通的开发人员脱离繁琐的枯燥无聊的数据“增删改查”工作,完成从菜鸟到专家的蜕变过程。 订购方式 订购《SOD框架企业级应用数据架构实战》的朋友,请在下面链接的页面内容中留言回复,写上您的电子邮寄地址,等书上市后作者会与您联系详细邮购信息: 博客园网友 CSDN网友 PDF.NET会员 试读和了解更多详细的订购信息,请移步PDF.NET官网原文: “ 《SOD框架企业级应用数据架构实战》 新书简介和预定”。 感谢大家的支持! 深蓝医生 2020年6月10日 来源: oschina 链接: https://my.oschina.net/u/4406372/blog/4306989

《SOD框架企业级应用数据架构实战》新书简介和预定

断了今生、忘了曾经 提交于 2020-07-28 14:18:54
SOD框架“企业级”应用数据架构实战 ---- 致敬平凡的程序员! 两大MVP: 张善友、 刘冰(宇内流云) JAVA技术专家 申毅 联合推荐! PDF.NET 框架简介 一分钟了解SOD框架 内容简介 全书主要以系统架构师的角度,讲述应用系统中所有有关数据问题的解决方案,这些方案小到一个具体的API使用,大到整个系统架构的设计,从解决方案的合理性,易用性和扩展性来逐步设计扩展,一步一步分析当前遇到的问题,给出这类问题的最佳实践的解决方案。通过这个问题的分析解决过程,引导普通的开发人员脱离繁琐的枯燥无聊的数据“增删改查”工作,完成从菜鸟到专家的蜕变过程。 订购方式 订购《SOD框架企业级应用数据架构实战》的朋友,请在下面链接的页面内容中留言回复,写上您的电子邮寄地址,等书上市后作者会与您联系详细邮购信息: 博客园网友 CSDN网友 PDF.NET会员 试读和了解更多详细的订购信息,请移步PDF.NET官网原文: “ 《SOD框架企业级应用数据架构实战》 新书简介和预定”。 感谢大家的支持! 深蓝医生 2020年6月10日 来源: oschina 链接: https://my.oschina.net/u/4326655/blog/4306963

SOD让你的旧代码焕发青春

风格不统一 提交于 2020-05-05 13:54:25
最近接手了一个旧的系统,各种陈旧的问题比较多,其中最棘手的就是操作数据库的部分,具体如下:    1、核心库是一个最后修改时间为2008年的库,先不说有多陈旧,现在这个库只是一个DLL文件,没有源码,也已经没人知道里面都实现了些啥功能,就算你怀疑数据库读写有问题,也无法验证和调试,反编译出来的源码也没法用。   2、这个库用的是System.Data.OracleClient操作Oracle,问题很明显,依赖于Oracle客户端,区分32位和64位,一旦客户的Oracle客户端出点问题,系统就歇菜了,而且部署起来也不方便。   3、操作数据库用的全是拼写SQL语句,对我这种习惯了ORM的人,实在太痛苦了,而且对JSON和流数据的支持也不是很好,这两种数据都需要单独处理,无形中增加了操作数据库的次数。   明确了问题,也就知道了最终想要达到的效果,具体如下:    1、有源码,风险可控。   2、不依赖于Oracle客户端,不区分32位和64位,这个其实Oracle官方已经提供了解决方案,就是ODP.NET,最新版本已经快可以达到前面两个要求,而且提供了NUGET包,引用简单。   3、既要兼容旧有的DbHelper的操作方式,也要支持ORM的操作方式,一是因为原来代码量过大,不可能快速完全转到ORM,所以必须兼容旧有的操作方式,同时,ORM也是必须的,毕竟自己用着顺手。  

每秒生成一千万个【可视有序】分布式ID的简单方案

荒凉一梦 提交于 2020-05-02 12:27:34
去年做了一个产品,会经常导入导出大量的外部数据,这些数据的ID有的是GUID类型,有的是字符串,也有的是自增。GUID类型没有顺序,结果要排序得借助其它业务字段,整体查询效率比较低;字符串ID本来是用来转换GUID的或者数字ID的,结果有些字符串ID不符合规范,常常有特殊数据需要处理;自增主键ID的数据导入合并经常有冲突。 为了避免GUID主键的“索引页分裂”问题,提高查询效率,同时为了解决分布式环境下的数据导入合并问题,强烈需要一种分布式的,有序的ID生成方案。我参考了雪花ID(Twitter-Snowflake,64位自增ID算法)实现方案,设计一个更容易肉眼观察数值连续有序的分布式ID方案。 跟雪花ID方案一样,都是使用时间数据做为生成ID的基础,不同的在于对数据的具体处理方式。另外,为了确保每台机器ID的不同,可以配置指定此ID,在应用程序配置文件中如下配置: <!-- 分布式ID标识,3位整数,范围101-999 大小 --> < add key ="SOD_MachineID" value ="101" /> 如果不配置分布式ID,默认将根据当前机器IP随机生成3位分布式机器ID。 该算法的实现比雪花算法简单不少,详细的不多说,先直接看代码: /// <summary> /// 获取一个新的有序GUID整数 /// </summary> /// <param name=