MySoft.Data 2.7.3

dotnet ORM

版权

这里版权属于老毛:http://www.cnblogs.com/maoyong

说明

MySoft体系中的ORM组件,这里的版本为2.7.3,在公司内部企业项目中历练了几年,修复了一些bug,所以直接在这里开源进行维护。
但是要注意:组件的全部版权属于老毛。
在这个组件的基础上,又封装了一层单例层,再配合这个单例层的代码生成器,能同时生成实体和针对这个实体的增删改查方法。

单组件的使用教程

参考老毛的使用教程:http://www.cnblogs.com/maoyong/archive/2010/04/13/1710879.html

此版本的使用方法

由于采用了单例进行封装,通过实体代码生成器生成有两个文件:实体和实体对应的单例业务(比如要生成sys_Area这个表的,会生成sys_Area.cs、sys_AreaService)。
sys_Area.cs是常规的表映射。   sys_AreaService.cs如下:

public class sys_AreaService : BaseDao<sys_Area>
{
#region "单例"
private static sys_AreaService service;
public static sys_AreaService Instance
{
get
{
if (service == null)
{
service = new sys_AreaService();
}
return service;
}
}
#endregion
}

BaseDao类为针对单表的增删查改的封装,泛型传入的是针对这张表对应的实体。
每次进行使用时,直接调用单例即可,这里如果要使用添加的方法如下:

//初始化要增加的实体
var area = new sys_Area()
{
A_Name = "test"
};
//调用Add_Entity方法
if (sys_AreaService.Instance.Add_Entity(area))
{
//成功后会返回主键自增ID
var areaid = area.Areaid;
}

SQL Server连接字符串例子:

<add name="ConnectionString" connectionString="server=192.168.199.1;database=DataBaseName;uid=sa;pwd=123456;" providerName="MySoft.Data.SqlServer9.SqlServer9Provider" />

说明:是使用了MySoft.Data组件的驱动思想,采用SqlServer9的驱动,最明显区别在于生成的分页将更高效。

使用技巧

1、针对中小型业务系统,推荐采用自增列ID的方式,且此版本的组件对非自增列的支持不太强。
2、使用过程中,数据库主要是SQL Server为主。同时也支持Oracle、MySql、Access这些。

源码:https://github.com/easonjim/MySoft.Data

bug提交:https://github.com/easonjim/MySoft.Data/issues

Release版本:https://github.com/easonjim/MySoft.Data/releases

MySoft.Data 2.7.3版本的GitHub托管(ORM升级封装)的更多相关文章

  1. 转: 借助GitHub托管你的项目代码

    转自:http://www.cnblogs.com/edisonchou/p/5990875.html 备注: 原贴关于github使用说明,非常详细易懂.建议看原帖. 借助GitHub托管你的项目代 ...

  2. jekyll : 使用github托管你的博客

    使用github托管你的博客 效果: http://wuya1234.github.io/blog/2013/11/09/start-github-blog/ 样式神马的还没整 电脑系统 我使用的是m ...

  3. spring framework项目源码github托管地址

    方法一:直接下载,github托管地址:http://repo.spring.io/simple/libs-release-local/org/springframework/spring/ 方法二: ...

  4. GitHub托管

    借助GitHub托管你的项目代码   PS:话说自己注册了GitHub都很久了,却没有怎么去弄,现在系统学习一下,也把自己的学习经历总结下来share给大家,希望大家都能把GitHub用起来,把你的项 ...

  5. Github又悄悄升级了,这次的变化是大文件的存储方式

    目录 简介 LFS和它的安装 LFS的使用 从LFS中删除文件 从LFS中拉取代码 转换历史数据到LFS 总结 简介 github是大家常用的代码管理工具,也被戏称为世界上最大的程序员交友网站,它的每 ...

  6. 【转载】借助GitHub托管你的项目代码

    PS:自己关注博客园有2年之久了,不久前才申请注册账号.GitHub也差不多一年多了,因英语水平刚刚及格,所以去GitHub没有博客园多,也是几个月前才注册了账号,前几天休息时看到 EdisonCho ...

  7. iOS:使用Github托管自己本地的项目代码方式一:(Xcode方式:开发工具Xcode配置Git,由Xcode-->Source Control-->Commit)

    管理代码的地方主要有:Github(国外流行).CocoaChina.Cocoa4App.中国开源社区.CSDN.博客园.简书等等..... 现在主要介绍如何使用Github托管自己的项目代码. 尊重 ...

  8. Oracle数据库版本10.2.0.1升级到10.2.0.3(转)

    Oracle数据库版本10.2.0.1升级到10.2.0.3 1.停止OEM/isqlplus/监听/DB实例 $ emctl stop dbconsole $ isqlplusctl stop $ ...

  9. Android Studio利用GitHub托管项目

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

随机推荐

  1. BZOJ 4034 【HAOI2015】 T2

    Description 有一棵点数为 N 的树,以点 1 为根,且树点有边权.然后有 M 个操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a . 操作 2 :把某个节点 x 为根的子树中所 ...

  2. WebApp:如何让安卓的webview缓存webapp的html、js和图片等资源

    一.开发环境     客户端:安卓+webview(vuejs)     服务器端:tomcat 8.0 二.问题     使用安卓原生+web(基于webpack+vuejs)的方式开发了一个安卓应 ...

  3. 记一个全局变量"冒充"局部变量引起的bug

    看代码相当简单直观,觉得怎么都不会出错,可运行结果明明就是错了 - 对着vim摸着脑袋就是想不出哪里有问题,可去掉新加的代码,就又可以了. 没办法,只好祭出杀手锏:一行一行注释掉来观察... 反映问题 ...

  4. 工作随笔——pre-commit钩子限制日志长度和提交的文件类型

    2014-09-18:解决Subversion edge 的hook中文乱码问题 近期检查SVN时发现备份好的文件体积异常庞大.才跑2个月备份出来的大小就有4G多.仔细查询发现很多很多IDE自动生成的 ...

  5. Struts2 动态结果和带参数的跳转

    完整代码:Struts16ActionResultsDemo.rar 1.动态结果. 有时我们需要在Action里取得我个要转跳的页面 看一下我们的struts.xml <?xml versio ...

  6. C#读取网络流,读取网络上的js文件

    写博客的目的就是让其他人少走弯路. C#读取网络上的流和js文件出现的问题 一开始看了今天博客园上的推荐文章,用C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子),然 ...

  7. 一些实用的sublime快捷键以及初始设置

    一些常用快捷键 Ctrl + N-------------------新建 Ctrl + F-------------------查找 Ctrl+Shift +k -----------删除一行 Ct ...

  8. How to remove a batch of VMs and related Disks

    Foreword Need to remove a batch of VMs, which named with same prefix or belong to same Cloud Service ...

  9. BGP--边界网关协议

    要全面了解BGP,首先我们要回答以下看上去很简单的问题:为什么需要BGP,也就是说BGP是如何产生的,它解决了什么问题.带着以上问题,我们先简单的回顾一个路由协议发展的轨迹. 首先路由的实质是描述一个 ...

  10. JavaScript学习笔记- 自定义滚动条插件

    此滚动条仅支持竖向(Y轴) 一.Css /*这里是让用户鼠标在里面不能选中文字,避免拖动的时候出错*/ body { -moz-user-select: none; /*火狐*/ -webkit-us ...