codeFirst,如果没有配置SugarTable,不能生成数据表(索引的{table}占位符也依赖特性) 返回

热忱回答(40)
-
fry VIP0
2025/8/19如果不配置SugarTable特性,可以用模型名称来替换
如果一开始没有配置,后面又加上了SugarTable特性,可以按照这个里面的名称来设置表名称和索引
0 回复 -
fate sta VIP0
2025/8/19看文档实体配置
EntityServiceName 事件可以全局配置索引
0 回复 -
fry VIP0
2025/8/19全局设置也依赖于SqlTable特性,否则CodeFirst无法生成
0 回复 -
fate sta VIP0
2025/8/19@fry:可以完全不用sugartable特性
0 回复 -
fry VIP0
2025/8/19我的测试如下:
1:如果未标记sugartable特性,则该模型无法进入EntityService事件
2:如果标记sugartable特性,设置EntityService事件统一修改表名称,服务会报错
0 回复 -
fate sta VIP0
2025/8/19如果未标记sugartable特性,则该模型无法进入EntityServiceName事件
肯定会进EntityServiceName
0 回复 -
fate sta VIP0
2025/8/19你说的第一条就不成立
0 回复 -
fate sta VIP0
2025/8/19有疑问写2个属性的空DEMO自测,有疑问发DEMO
0 回复 -
fry VIP0
2025/8/19EntityServiceName这个没找到
0 回复 -
fry VIP0
2025/8/19@fate sta:打错了
0 回复 -
fry VIP0
2025/8/19
0 回复 -
fry VIP0
2025/8/19
0 回复 -
fate sta VIP0
2025/8/19你把逻辑修改一下就行了。。这个逻辑又不是固定的
0 回复 -
fate sta VIP0
2025/8/19这个是你自个写的逻辑 , 按你的需求去写
0 回复 -
fry VIP0
2025/8/19关键是没有标记SugarTable的模型进不来,处理不了
0 回复 -
fate sta VIP0
2025/8/19
这个逻辑不是你自个加的吗,删了不就进来了吗?
0 回复 -
fate sta VIP0
2025/8/19建议你建一个空的DEMO,写个类玩一下。
第一次使用实体不管你是不是有特性都会进来
0 回复 -
fry VIP0
2025/8/19@fate sta:删掉sugartable,就无法进入entitynameservice这个事件里了
0 回复 -
fate sta VIP0
2025/8/19@fry:建议你写个DEMO学习一下。100%可以的,有疑问 提供DEMO
0 回复 -
fate sta VIP0
2025/8/19大概率是 你用的是别人写好的成品 代码。 别人在CodeFirst地方 获取实体程序集的地方过滤掉了
0 回复 -
fry VIP0
2025/8/20@fate sta:好的,我查查看
0 回复 -
fry VIP0
2025/8/20@fate sta:不是别人的,是自己搭建的
0 回复 -
fry VIP0
2025/8/20@fate sta:没有过滤,程序启动生成库和表的时候,没有带SugarTable标记的实体会影响整个实体的生成(3个实体,两个带标记,一个未带标记,生成库是可以的,表一个都没有)
0 回复 -
fate sta VIP0
2025/8/20@fry:有疑问提供DEMO, 100%是可以的。这个不用怀疑。
0 回复 -
fate sta VIP0
2025/8/20db.CodeFirst.InitTable(typeof(未标记的类)); 打个断点就行了
0 回复 -
fate sta VIP0
2025/8/20一个DEMO也就2分钟。你自个写个DEMO就知道了。
0 回复 -
fry VIP0
2025/8/200 回复 -
fate sta VIP0
2025/8/20
你打断点测试过吗? 明明进断点了
0 回复 -
fate sta VIP0
2025/8/20还有表名中不要有前缀 。abc.这个删掉。如果要多库建表。看文档:多租户
0 回复 -
fry VIP0
2025/8/20@fate sta:测试过,是要统一加前缀这个需求
0 回复 -
fate sta VIP0
2025/8/20@fry:那还有什么问题吗?能进断点的。你的问题是什么?
0 回复 -
fate sta VIP0
2025/8/20能进断点就不需要特性只要改 NameService里面的对象就行了。
0 回复 -
fate sta VIP0
2025/8/20我上面的截图已经进了断点。
0 回复 -
fry VIP0
2025/8/20@fate sta:我测试也进断点,未标记特性,统一加表前缀会有异常,我现在的需求是:不管加不加SugarTable特性,统一加表名称前缀都要可以,且不出现异常
0 回复 -
fate sta VIP0
2025/8/20@fry:前缀是什么东西?库名还是什么 。还是说 这个表名里面就有 xxx.
0 回复 -
fate sta VIP0
2025/8/20如果是库名看文档:多租户 ,sqlsugar是通过多租户实现多库操作
0 回复 -
fate sta VIP0
2025/8/20表名存在 【.】会报错要改成 【_】, mysql不存在schema这个东西目前应该没有用.的地方
0 回复 -
fate sta VIP0
2025/8/20如果表名加前缀改成 abc. 改成 abc_ 不要用.
0 回复 -
fry VIP0
2025/8/21@fate sta:ok,,我再试试
0 回复 -
fry VIP0
2025/8/21@fate sta:这个问题解决了
0 回复