.netcore使用code frist生成数据库,使用EF映射字段时,将基类的string类型映射为text类型,子类的string类型映射为varchar类型,长度都没有超过255,是什么原因呢?
有用特性限制长度吗?其实我觉得code first用处不是很大,你们为什么用codefrist,动手建表也不是很费劲的事情。
没有,只是在配置Property使用了方法HasMaxLength
@阿伟你怎么了: 那应该效果是一样的,如果限制了长度,应该会生成varchar吧,父类也限制了吗?
@阿伟你怎么了: 把实际的代码贴出来吧,这应该好解决
主要还是因为懒
@会长: 问题太奇怪了,我将基类的代码放到子类中,生成的数据库还是text类型的,就基类的string映射成了text
我用特性限制了字符串长度,生成的string类型就是varchar了
@阿伟你怎么了: 基类里的Configure方法可能没有调用到吧,你设个断点看看,有调用到吗
@会长: 还真没有调用到
@阿伟你怎么了: 另外,主键建议用自增主键。不知道你用的什么数据库,如果是MySQL的InnoDb引擎的话,主键默认会加聚簇索引的,GUID会让相邻数据在存储介质中不连续
@阿伟你怎么了: 破案了,园豆拿来
@会长: 你那么多豆豆,还差我这点啊,我全身就只有100个豆子,反正谢谢你了啊
@阿伟你怎么了: 哈哈,不过你那个豆豆不给我你也收不回去了呀,覆豆难收啊
@会长: T_T