## v0.3.25

- 修复 全局过滤器一个赋值低级错误;
- 增加 IFreeSql<TMark> 空接口,现实多个 IFreeSql 注入使用,使用泛型标识区分;
This commit is contained in:
2881099
2019-03-23 02:11:18 +08:00
parent 07d0de8093
commit bf72bf423c
17 changed files with 71 additions and 38 deletions

View File

@ -20,6 +20,8 @@ namespace restful.Controllers {
public class xxxx {
public int Id { get; set; }
public bool IsDeleted { get; set; }
}

View File

@ -1,4 +1,5 @@
using FreeSql.DataAnnotations;
using repository_01;
namespace restful.Entitys {
public class Song {

View File

@ -19,15 +19,15 @@ namespace repository_01 {
/// <summary>
/// 用户密码信息
/// </summary>
public class SysUserLogOn {
public class Sys1UserLogOn {
[Column(IsPrimary = true, Name = "Id")]
public Guid UserLogOnId { get; set; }
public virtual SysUser User { get; set; }
public virtual Sys1User User { get; set; }
}
public class SysUser {
public class Sys1User {
[Column(IsPrimary = true, Name = "Id")]
public Guid UserId { get; set; }
public virtual SysUserLogOn UserLogOn { get; set; }
public virtual Sys1UserLogOn UserLogOn { get; set; }
}
public class Startup {
@ -43,11 +43,11 @@ namespace repository_01 {
.UseMonitorCommand(cmd => Trace.WriteLine(cmd.CommandText))
.Build();
var sysu = new SysUser { };
Fsql.Insert<SysUser>().AppendData(sysu).ExecuteAffrows();
Fsql.Insert<SysUserLogOn>().AppendData(new SysUserLogOn { UserLogOnId = sysu.UserId }).ExecuteAffrows();
var a = Fsql.Select<SysUserLogOn>().ToList();
var b = Fsql.Select<SysUserLogOn>().Any();
var sysu = new Sys1User { };
Fsql.Insert<Sys1User>().AppendData(sysu).ExecuteAffrows();
Fsql.Insert<Sys1UserLogOn>().AppendData(new Sys1UserLogOn { UserLogOnId = sysu.UserId }).ExecuteAffrows();
var a = Fsql.Select<Sys1UserLogOn>().ToList();
var b = Fsql.Select<Sys1UserLogOn>().Any();
}
public IConfiguration Configuration { get; }
@ -92,8 +92,10 @@ namespace repository_01 {
var builder = new ContainerBuilder();
builder.RegisterFreeRepository(
filter => filter.Apply<Song>("test", a => a.Title == DateTime.Now.ToString() + System.Threading.Thread.CurrentThread.ManagedThreadId),
builder.RegisterFreeRepository(filter => filter
.Apply<Song>("test", a => a.Title == DateTime.Now.ToString() + System.Threading.Thread.CurrentThread.ManagedThreadId)
.Apply<ISoftDelete>("softdelete", a => a.IsDeleted == false)
,
this.GetType().Assembly
);
@ -121,4 +123,8 @@ namespace repository_01 {
});
}
}
public interface ISoftDelete {
bool IsDeleted { get; set; }
}
}