1 不支持更新主键

ORM默认不支持修改主键,这种需求有2种方案

1、删除当前记录,然后在添加一条新记录(因为主键都可以更新,说明没有外部引用,可以直接删掉在加)

2、新建一个没有主键的实体,指定表名用Wherecolumns更新

 

2 使用lamada语法写操作数据库时的类型转换问题

不支持c#的类型转换如(toint)

需要使用SqlFunc.ToInt32 ...处理

3 OrderBy注意事项

3.1 支持lamada表达式

3.2 支持字符串

3.3 多表关联的时候注意是否应用到正确的表;使用MergeTable()后再orderby是一个不错的选择

4 case when 用法

SqlFunc.IF(st.Id > 1)
     .Return(st.Id)
     .ElseIF(st.Id == 1)
     .Return(st.SchoolId).End(st.Id)
      
//注意:End因为泛型原因没办传null,如果需要传null这么写.End<int>();
//等于同 case when
//一定要有end