NewLife.XCode 上手指南2018版(一)代码生成
目录
- NewLife.XCode 上手指南2018版(一)代码生成
- NewLife.XCode 上手指南2018版(二)增
- NewLife.XCode 上手指南2018版(三)查
- NewLife.XCode 上手指南2018版(四)删
- NewLife.XCode 上手指南2018版(五)改
一、前言
楼主从2013年开始使用xcode到现在已经5个年过去了,只要公司项目用C#的orm肯定就是xcode,没有其他选项,因为他使用起来真的太方便太灵活了,想要什么都可以做到。这个系列为什么2018年又要写一遍呢,因为公司来了个小伙子,白纸一张,什么都不懂,自己看看2013年的上手指南真的看不下去了,实在不适合初学者,所以才想花点时间,重新写一个指南。这次时间紧任务多,所以除了前言不会再有废话,直奔主题。
二、阅读本指南前置条件
了解基础的C#语法
了解数据库基本知识
三、本指南达到的目的
快速上手XCode,可以利用XCode对数据库进行增删改查
四、XCode的工具下载
http://x.newlifex.com/XCoder_Install.exe
exe实际上是一个rar的自动解压脚本,下载运行后,会自动在C:\X\Coder\目录下生成这些文件。

五、新建项目和DLL的引用
0.新建一个项目,项目名称随意取,Vs2013新建的项目默认是.net4.5的版本。
1.在引用的地方右键,管理NuGet程序包

2. 在右上角搜索框内输入newlife,找到NewLife.XCode,点击安装

3.安装完成之后,会在项目文件里看到如下文件

3.1 生成实体类.tt 是个脚本文件,用于生成实体类cs文件,这里我们用不到,可以删除他,如果像知道怎么用这个tt文件可以看这个http://www.cnblogs.com/m5v8/p/8509810.html
3.2 NewLife.Core是XCode使用的基本库,所以必须要有
3.3 XCode是我们今天的主角,宇宙无敌超级好用的ORM
六、新建一个数据库
此处使用的MSSQL2005
新建一个数据库叫XCodeTest
然后执行如下SQL脚本,新建一个MyUser的表
USE [XCodeTest]
GO
/****** 对象: Table [dbo].[MyUser] 脚本日期: 03/05/2018 16:46:29 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[MyUser](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[Age] [int] NULL,
[Money] [decimal](18, 2) NULL,
[vTime] [datetime] NULL,
CONSTRAINT [PK_MyUser] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
七、生成Domain
1. 打开C:\X\XCoder\XCoder.exe

2. XCoder在你没有做任何配置的情况下,自动会识别本机的mssql,然后自动识别到所有数据库,所以这里我们直接选择刚才的xcodeTest数据库就可以了。至于其他的链接字段怎么修改和配置,可以自行查看XCoder.exe.config里的ConnectionString

3. 选择刚才我们新建的表,选择模板实体数据,命名空间,连接名根据项目需求进行一些修改就可以了如下图所示。(实体基类不要去修改)

4. 再重复第三步生成实体业务,实体业务里面包含了基本的查询,基本的扩展属性,这些都是根据数据库的索引和命名规则自动生成的,真是太方便了
5. 打开目录,把我们刚才生成的cs文件copy到项目中去,新建一个Domain文件夹,然后把2个文件复制进来就可以了,vs真是棒棒的。

5.1 MyUser.cs 文件就是基础的数据实体对象,里面包含了表里所有的字段值
5.2 MyUser.Biz.cs文件里面包含了对这个实体对象进行的一些基本操作,包括一些扩展查询,这里的查询是XCode根据表索引来自行生成的,如果没有索引就不会有。
而扩展属性呢,是根据表的名字和表的字段关联关系自动生成的。这个我这里就不再展开了。
结尾
到目前为止,我们完成了项目的新建、dll的引用、XCode代码生成器的使用,生成了Domain。 下一节我们介绍如何利用XCode优雅的写出各种查询。
NewLife.XCode 上手指南2018版(一)代码生成的更多相关文章
- NewLife.XCode 上手指南2018版(二)增
目录 NewLife.XCode 上手指南2018版(一)代码生成 NewLife.XCode 上手指南2018版(二)增 NewLife.XCode 上手指南2018版(三)查 NewLife.XC ...
- NewLife.XCode 上手指南
想了解什么是XCode 在这里我不对XCode做过多介绍,XCode曾经是一个轻量级ORM组件,现在是一个重量级数据映射框架,支持实体对象数据到不同媒体的数据映射,提供面向对象的方式操作数据库,解决9 ...
- [NewLife.XCode]角色权限
NewLife.XCode是一个有10多年历史的开源数据中间件,支持nfx/netcore,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和 ...
- [NewLife.XCode]对象字典缓存(百万军中取敌首级)
NewLife.XCode是一个有10多年历史的开源数据中间件,支持nfx/netcore,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和 ...
- [NewLife.XCode]高级增删改
NewLife.XCode是一个有10多年历史的开源数据中间件,支持nfx/netstandard,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示 ...
- [NewLife.XCode]实体列表缓存(最土的方法实现百万级性能)
NewLife.XCode是一个有10多年历史的开源数据中间件,支持nfx/netcore,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和 ...
- [NewLife.XCode]增删改查入门
NewLife.XCode是一个有10多年历史的开源数据中间件,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和运行日志来进行深入分析,蕴含 ...
- [NewLife.XCode]数据模型文件
NewLife.XCode是一个有10多年历史的开源数据中间件,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和运行日志来进行深入分析,蕴含 ...
- [NewLife.XCode]实体类详解
NewLife.XCode是一个有10多年历史的开源数据中间件,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和运行日志来进行深入分析,蕴含 ...
随机推荐
- windows下使用Git Bash命令行克隆远程仓库代码
此处使用的代码托管平台是GitLab,相比GitHub来说,它可以设置免费的私有仓库,哈哈,妈妈再也不用担心我的源码泄露了!1.切换到本地的工作目录,我的目录是: cd /d/coder/websit ...
- 错误:The request sent by the client was syntactically incorrect的解决
问题: 错误400-The request sent by the client was syntactically incorrect. springMVC中,某个页面提交时报400错误,如下图. ...
- fopen fclose feof fgets fetl
fopen :Open file, or obtain information about open files 例如 fid = fopen(filename, permission)%许可包括: ...
- 10_set集合
一.集合类型 集合是一组无序排列的可哈希的值(可哈希的值->不可变),集合成员可以做字典中的键.但集合本身是不可哈希的. 集合是无序没有索引,也没有像字典的key,所以集合不能更改元素.只能增删 ...
- 浅谈计算机中的IO模型
IO模型一共有5种: blocking IO #阻塞IO nonblocking IO #非阻塞IO IO myltiplexing #IO多路复用 signal driven IO #信号驱动IO ...
- iOS-生成二维码图片【附中间带有小图标二维码】(QRCode)
生成二维码图片也是项目中常用到的,二维码的扫描Git上有很多好用的,这里主要说下二维码的生成 1.普通二维码 方法 /** 生成二维码 QRStering:字符串 imageFloat:二维码图片大小 ...
- ABP官方文档翻译 6.1.1 MVC控制器
ASP.NET MVC控制器 介绍 AbpController基类 本地化 其他 过滤器 异常处理和结果包装 审计日志 验证 授权 工作单元 介绍 ABP通过Abp.Web.Mvc nuget包集成到 ...
- JavaBean命名规范
———————————————————————————————————————————————————————— 属性名/类型 | ...
- hdu 4656 Evaluation [任意模数fft trick]
hdu 4656 Evaluation 题意:给出\(n,b,c,d,f(x) = \sum_{i=1}^{n-1} a_ix^i\),求\(f(b\cdot c^{2k}+d):0\le k < ...
- .net使用AsposeWord导出word table表格
本文为原创,转载请注明出处 1.前言 .net平台下导出word文件还可以使用Microsoft.Office.Interop和NPOI,但是这两者都有缺点,微软的Office.Interop组件需要 ...