update

28810
2019-06-03 18:38:06 +08:00
parent 014d784ce3
commit 7648d0e5e4
7 changed files with 9 additions and 90 deletions

2
AOP.md

@@ -114,7 +114,7 @@ fsql.Aop.Where = (s, e) => {
* [《CodeFirst模式之四类型映射》](https://github.com/2881099/FreeSql/wiki/%e7%b1%bb%e5%9e%8b%e6%98%a0%e5%b0%84)
* [《CodeFirst模式之五迁移结构》](https://github.com/2881099/FreeSql/wiki/CodeFirst#%e8%bf%81%e7%a7%bb%e7%bb%93%e6%9e%84)
- [《DbFirst模式开发介绍》](https://github.com/2881099/FreeSql/wiki/DbFirst)
- [《DbFirst模式之一使用模板生成器》](https://github.com/2881099/FreeSql/wiki/DbFirst#%e7%94%9f%e6%88%90%e5%99%a8)
- [《DbFirst模式之一使用生成器》](https://github.com/2881099/FreeSql.Tools)
- [《分区、分表、分库》](https://github.com/2881099/FreeSql/wiki/%e5%88%86%e5%8c%ba%e5%88%86%e8%a1%a8)
- [《过滤器、全局过滤器》](https://github.com/2881099/FreeSql/wiki/%e8%bf%87%e6%bb%a4%e5%99%a8)
- [《租户》](https://github.com/2881099/FreeSql/wiki/%e7%a7%9f%e6%88%b7)

@@ -24,91 +24,10 @@ var t2 = fsql.DbFirst.GetTablesByDatabase(fsql.DbFirst.GetDatabases()[0]);
## 生成器
生成器是基于 dbfirst 开发的辅助工具,适用老项目一键生成实体。生成器采用模板的方式,作者实现了三种生成模板:
源码地址:[https://github.com/2881099/FreeSql.Tools](https://github.com/2881099/FreeSql.Tools)
> 作者:[mypeng1985](https://github.com/mypeng1985)
| 模板名称 | 路径 | 类型映射 | 外键导航属性 | 缓存管理 | 失血 | 贫血 | 充血 |
| ------------- | - | - |- | - |- | - |- |
| simple-entity | ../Templates/MySql/simple-entity | √ | X | X | √ | X | X |
| simple-entity-navigation-object | ../Templates/MySql/simple-entity-navigation-object | √ | √ | X | √ | X | X |
| rich-entity-navigation-object | ../Templates/MySql/rich-entity-navigation-object | √ | √ | √ | X | √ | X |
> 更多模板逐步开发中。。。
```csharp
//创建模板生成类实现
var gen = new FreeSql.Generator.TemplateGenerator();
gen.Build(fsql.DbFirst,
@"C:\Users\28810\Desktop\github\FreeSql\Templates\MySql\simple-entity", //模板目录(事先下载)
@"C:\Users\28810\Desktop\新建文件夹 (9)", //生成后保存的目录
"cccddd" //数据库
);
```
## 模板语法
```html
<html>
<head>
<title>{#title}</title>
</head>
<body>
<!--绑定表达式-->
{#表达式}
{##表达式} 当表达式可能发生runtime错误时使用性能没有上面的高
<!--可嵌套使用同一标签最多支持3个指令-->
{include ../header.html}
<div @for="i 1, 101">
<p @if="i === 50" @for="item,index in data">aaa</p>
<p @else="i % 3 === 0">bbb {#i}</p>
<p @else="">ccc {#i}</p>
</div>
<!--定义模块,可以将公共模块定义到一个文件中-->
{module module_name1 parms1, 2, 3...}
{/module}
{module module_name2 parms1, 2, 3...}
{/module}
<!--使用模块-->
{import ../module.html as myname}
{#myname.module_name(parms1, 2, 3...)}
<!--继承-->
{extends ../inc/layout.html}
{block body}{/block}
<!--嵌入代码块-->
{%
for (var a = 0; a < 100; a++)
print(a);
%}
<!--条件分支-->
{if i === 50}
{elseif i > 60}
{else}
{/if}
<!--三种循环-->
{for i 1,101} 可自定义名 {for index2 表达式1 in 表达式2}
{for item,index in items} 可选参数称 index
可自定义名 {for item2, index99 in 数组表达式}
{for key,item,index on json} 可选参数 item, index
可自定义名 {for key2, item2, index99 in 对象表达式}
{/for}
<!--不被解析-->
{miss}
此块内容不被bmw.js解析
{/miss}
</body>
</html>
```
![image](https://user-images.githubusercontent.com/16286519/58793525-e0cf3300-8628-11e9-8959-d2efed685843.png)
## 参考资料

@@ -48,7 +48,7 @@ FreeSql是一个功能强大的NETStandard库用于对象关系映射程序(O
* [导航配置](https://github.com/2881099/FreeSql/wiki/%e5%ae%9e%e4%bd%93%e5%85%b3%e7%b3%bb)
* [迁移结构](https://github.com/2881099/FreeSql/wiki/CodeFirst#%e8%bf%81%e7%a7%bb%e7%bb%93%e6%9e%84)
* [DbFirst](https://github.com/2881099/FreeSql/wiki/DbFirst)
* [使用模板生成器](https://github.com/2881099/FreeSql/wiki/DbFirst#%e7%94%9f%e6%88%90%e5%99%a8)
* [生成器](https://github.com/2881099/FreeSql.Tools)
* [表达式函数](https://github.com/2881099/FreeSql/wiki/%e8%a1%a8%e8%be%be%e5%bc%8f%e5%87%bd%e6%95%b0)
* [字符串](https://github.com/2881099/FreeSql/wiki/%e8%a1%a8%e8%be%be%e5%bc%8f%e5%87%bd%e6%95%b0#%e5%ad%97%e7%ac%a6%e4%b8%b2)
* [日期/时间](https://github.com/2881099/FreeSql/wiki/%e8%a1%a8%e8%be%be%e5%bc%8f%e5%87%bd%e6%95%b0#%e6%97%a5%e6%9c%9f)

@@ -34,7 +34,7 @@
* [导航配置](https://github.com/2881099/FreeSql/wiki/%e5%ae%9e%e4%bd%93%e5%85%b3%e7%b3%bb)
* [迁移结构](https://github.com/2881099/FreeSql/wiki/CodeFirst#%e8%bf%81%e7%a7%bb%e7%bb%93%e6%9e%84)
* [DbFirst](https://github.com/2881099/FreeSql/wiki/DbFirst)
* [使用模板生成器](https://github.com/2881099/FreeSql/wiki/DbFirst#%e7%94%9f%e6%88%90%e5%99%a8)
* [生成器](https://github.com/2881099/FreeSql.Tools)
* [表达式函数](https://github.com/2881099/FreeSql/wiki/%e8%a1%a8%e8%be%be%e5%bc%8f%e5%87%bd%e6%95%b0)
* [字符串](https://github.com/2881099/FreeSql/wiki/%e8%a1%a8%e8%be%be%e5%bc%8f%e5%87%bd%e6%95%b0#%e5%ad%97%e7%ac%a6%e4%b8%b2)
* [日期/时间](https://github.com/2881099/FreeSql/wiki/%e8%a1%a8%e8%be%be%e5%bc%8f%e5%87%bd%e6%95%b0#%e6%97%a5%e6%9c%9f)

@@ -29,7 +29,7 @@ FreeSql 除了支持基本的增删查改功能外,还支持基于现有数据
* [《CodeFirst模式之四类型映射》](https://github.com/2881099/FreeSql/wiki/%e7%b1%bb%e5%9e%8b%e6%98%a0%e5%b0%84)
* [《CodeFirst模式之五迁移结构》](https://github.com/2881099/FreeSql/wiki/CodeFirst#%e8%bf%81%e7%a7%bb%e7%bb%93%e6%9e%84)
- [《DbFirst模式开发介绍》](https://github.com/2881099/FreeSql/wiki/DbFirst)
- [《DbFirst模式之一使用模板生成器》](https://github.com/2881099/FreeSql/wiki/DbFirst#%e7%94%9f%e6%88%90%e5%99%a8)
- [《DbFirst模式之一使用生成器》](https://github.com/2881099/FreeSql.Tools)
#### 高级

@@ -36,7 +36,7 @@ Assert.Equal(result1.Count, result1.Count);
* [《CodeFirst模式之四类型映射》](https://github.com/2881099/FreeSql/wiki/%e7%b1%bb%e5%9e%8b%e6%98%a0%e5%b0%84)
* [《CodeFirst模式之五迁移结构》](https://github.com/2881099/FreeSql/wiki/CodeFirst#%e8%bf%81%e7%a7%bb%e7%bb%93%e6%9e%84)
- [《DbFirst模式开发介绍》](https://github.com/2881099/FreeSql/wiki/DbFirst)
- [《DbFirst模式之一使用模板生成器》](https://github.com/2881099/FreeSql/wiki/DbFirst#%e7%94%9f%e6%88%90%e5%99%a8)
- [《DbFirst模式之一使用生成器》](https://github.com/2881099/FreeSql.Tools)
- [《使用读写分离》](https://github.com/2881099/FreeSql/wiki/%e8%af%bb%e5%86%99%e5%88%86%e7%a6%bb)
- [《分区、分表、分库》](https://github.com/2881099/FreeSql/wiki/%e5%88%86%e5%8c%ba%e5%88%86%e8%a1%a8)
- [《过滤器、全局过滤器》](https://github.com/2881099/FreeSql/wiki/%e8%bf%87%e6%bb%a4%e5%99%a8)

@@ -38,7 +38,7 @@ select.Master().WhereId(a => a.Id == 1).ToOne(); //强制读【主库】
* [《CodeFirst模式之四类型映射》](https://github.com/2881099/FreeSql/wiki/%e7%b1%bb%e5%9e%8b%e6%98%a0%e5%b0%84)
* [《CodeFirst模式之五迁移结构》](https://github.com/2881099/FreeSql/wiki/CodeFirst#%e8%bf%81%e7%a7%bb%e7%bb%93%e6%9e%84)
- [《DbFirst模式开发介绍》](https://github.com/2881099/FreeSql/wiki/DbFirst)
- [《DbFirst模式之一使用模板生成器》](https://github.com/2881099/FreeSql/wiki/DbFirst#%e7%94%9f%e6%88%90%e5%99%a8)
- [《DbFirst模式之一使用生成器》](https://github.com/2881099/FreeSql.Tools)
- [《分区、分表、分库》](https://github.com/2881099/FreeSql/wiki/%e5%88%86%e5%8c%ba%e5%88%86%e8%a1%a8)
- [《过滤器、全局过滤器》](https://github.com/2881099/FreeSql/wiki/%e8%bf%87%e6%bb%a4%e5%99%a8)
- [《租户》](https://github.com/2881099/FreeSql/wiki/%e7%a7%9f%e6%88%b7)