首页 新闻 会员 周边 捐助

efcore 当泛型主键为string时,如何全局统一设置string的长度

0
悬赏园豆:5 [已解决问题] 解决于 2022-08-22 02:07
1   public class BaseEnity<TKey>{
2     public TKey Id{get;set;}
3   }
4 
5   public class Book:BaseEntiy<string>{
6     public string Name{get;set;}
7   }

当生成book表时,Id类型是nvarchar(450)。

我想实现,不管有多少个实体,只要主键Id是string类型就都设置长度36.

尾随前行的主页 尾随前行 | 初学一级 | 园豆:0
提问于:2022-08-19 17:05
< >
分享
最佳答案
0

不差这点容量吧?EF不太熟,设置个ColumnAttribute.TypeName 试下

收获园豆:5
56180825 | 小虾三级 |园豆:1749 | 2022-08-19 20:32

那个要每个实体都去设置,就是感觉太麻烦了

 

尾随前行 | 园豆:0 (初学一级) | 2022-08-21 13:26
其他回答(1)
0

加了个接口,然后需要设置这个string id的长度继承这个接口,在OnModelCreating方法中去反射到所有的类,然后统一设置

尾随前行 | 园豆:0 (初学一级) | 2022-08-22 02:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册