更新readme的demo

This commit is contained in:
xuejiaming 2023-06-06 12:03:25 +08:00
parent 1d163c011a
commit 04d85c9660
2 changed files with 22 additions and 12 deletions

View File

@ -437,16 +437,13 @@ or
## 分表 ## 分表
我们以用户取模来做例子,配置entity 推荐 [fluent api](https://docs.microsoft.com/en-us/ef/core/modeling/) 我们以用户取模来做例子,配置entity 推荐 [fluent api](https://docs.microsoft.com/en-us/ef/core/modeling/)
`IShardingTable`数据库对象必须继承该接口
`ShardingTableKey`分表字段需要使用该特性
```c# ```c#
public class SysUserMod : IShardingTable public class SysUserMod
{ {
/// <summary> /// <summary>
/// 用户Id用于分表 /// 用户Id用于分表
/// </summary> /// </summary>
[ShardingTableKey]
public string Id { get; set; } public string Id { get; set; }
/// <summary> /// <summary>
/// 用户名称 /// 用户名称
@ -473,6 +470,10 @@ or
public SysUserModVirtualTableRoute() : base(2,3) public SysUserModVirtualTableRoute() : base(2,3)
{ {
} }
public override void Configure(EntityMetadataTableBuilder<SysUserMod> builder)
{
builder.ShardingProperty(o => o.Id);
}
} }
``` ```
@ -594,12 +595,11 @@ or
`ShardingDataSourceKey`分库字段需要使用该特性 `ShardingDataSourceKey`分库字段需要使用该特性
```c# ```c#
public class SysUserMod : IShardingDataSource public class SysUserMod
{ {
/// <summary> /// <summary>
/// 用户Id用于分库 /// 用户Id用于分库
/// </summary> /// </summary>
[ShardingDataSourceKey]
public string Id { get; set; } public string Id { get; set; }
/// <summary> /// <summary>
/// 用户名称 /// 用户名称
@ -647,6 +647,11 @@ or
}; };
} }
public override void Configure(EntityMetadataDataSourceBuilder<SysUserMod> builder)
{
builder.ShardingProperty(o => o.Name);
}
public override bool AddDataSourceName(string dataSourceName) public override bool AddDataSourceName(string dataSourceName)
{ {
throw new NotImplementedException(); throw new NotImplementedException();

View File

@ -450,16 +450,13 @@ or
## 分表 ## 分表
我们以用户取模来做例子,配置entity 推荐 [fluent api](https://docs.microsoft.com/en-us/ef/core/modeling/) 我们以用户取模来做例子,配置entity 推荐 [fluent api](https://docs.microsoft.com/en-us/ef/core/modeling/)
`IShardingTable`数据库对象必须继承该接口
`ShardingTableKey`分表字段需要使用该特性
```c# ```c#
public class SysUserMod : IShardingTable public class SysUserMod
{ {
/// <summary> /// <summary>
/// 用户Id用于分表 /// 用户Id用于分表
/// </summary> /// </summary>
[ShardingTableKey]
public string Id { get; set; } public string Id { get; set; }
/// <summary> /// <summary>
/// 用户名称 /// 用户名称
@ -486,6 +483,10 @@ or
public SysUserModVirtualTableRoute() : base(2,3) public SysUserModVirtualTableRoute() : base(2,3)
{ {
} }
public override void Configure(EntityMetadataTableBuilder<SysUserMod> builder)
{
builder.ShardingProperty(o => o.Id);
}
} }
``` ```
@ -607,12 +608,11 @@ or
`ShardingDataSourceKey`分库字段需要使用该特性 `ShardingDataSourceKey`分库字段需要使用该特性
```c# ```c#
public class SysUserMod : IShardingDataSource public class SysUserMod
{ {
/// <summary> /// <summary>
/// 用户Id用于分库 /// 用户Id用于分库
/// </summary> /// </summary>
[ShardingDataSourceKey]
public string Id { get; set; } public string Id { get; set; }
/// <summary> /// <summary>
/// 用户名称 /// 用户名称
@ -665,6 +665,11 @@ or
throw new NotImplementedException(); throw new NotImplementedException();
} }
public override void Configure(EntityMetadataDataSourceBuilder<SysUserMod> builder)
{
builder.ShardingProperty(o => o.Name);
}
protected override Expression<Func<string, bool>> GetRouteToFilter(string shardingKey, ShardingOperatorEnum shardingOperator) protected override Expression<Func<string, bool>> GetRouteToFilter(string shardingKey, ShardingOperatorEnum shardingOperator)
{ {