江湖救急,如果实现增,删,改,查的过滤器 返回
SqlSugar
老数据
4
1753
悬赏:5 飞吻
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
{
//主库连接字符串
ConnectionString = globalConfig.DbConnection.ConnectionString,
//数据库类型
DbType = (DbType)Enum.Parse(typeof(DbType), globalConfig.DbConnection.DbType),
//自动释放和关闭数据库连接,如果有事务事务结束时关闭,否则每次操作后关闭
IsAutoCloseConnection = true,
//从库配置
SlaveConnectionConfigs = globalConfig.DbConnection.SlaveConnectionConfigs,
});
// 数据插入和更新的aop
db.Aop.DataExecuting = (oldValue, entityInfo) =>
{
if (entityInfo.PropertyName == "TenantId")
{
//表中只要带了TenantId,所有的删除,修改,更新sql语句都要加上 TenantId=租户id的限制
}
};各位,请问怎么实现,表中只要带了TenantId,所有的删除,修改,更新sql语句都要加上 TenantId=租户id的限制
热忱回答(4)
-
fate sta VIP0
2021/10/210 回复 -
fate sta VIP0
2021/10/21删除中也支持使用
//配置表过滤器db.QueryFilter.Add(newTableFilterItem<Order>(it => it.Name.Contains("a")));//查询有效db.Queryable<Order>().ToList();//SELECT [Id],[Name],[Price],[CreateTime],[CustomId] FROM [Order] WHERE ([Name] like '%'+@MethodConst0+'%')//删除也有效db.Deleteable<Order>().EnableQueryFilter().Where(it=>it.Id==1).ExecuteCommand();//DELETE FROM [Order] WHERE ([Name] like '%'+@MethodConst1000+'%') AND ( [Id] = @Id0 )0 回复 -
fate sta VIP0
2021/10/21更新中使用过滤器
varx = Db.Storageable(list).ToStorage() // 会通过查询去验证是否分组到更新,查询会走过滤器x.AsUpdateable.ExecuteCommand();//更新的是过滤器分组后的数据0 回复 -
fate sta VIP0
2021/10/21插入就不需要过滤器了
0 回复