项目:家有鲁班、企业内部应用
工作内容:
薪资:8k-10k,13 薪,每季度 4000 奖金,五险一金,饮料不限量
要求:大专以上学历、1 年以上工作经验、良好英语阅读能力
加分项:熟悉 ef code frist 、熟悉 result api 、熟悉 领域驱动开发模式、熟悉 自动化测试
1
dswyzx 2020-10-19 12:10:38 +08:00
友情提示:code first 的项目上线之后维护真的好难.
一直想不通 ABP 这样的示例项目这么推崇 code first.看有没有大佬帮忙解惑 |
3
dswyzx 2020-10-19 12:20:45 +08:00 via iPhone
@yeqiu 哈!来探讨一下,一个字段设置了索引,现在想改变字段 maxlenth,迁移脚本为删除索引,修改字段限制,新建索引。
若是 db 不能停机维护,表数据量又很夸张。怎么来不停机维护一下呢? by the way:请教一下 db 里维护版本的那张表可以手动维护版本信息吗 |
4
yeqiu OP @dswyzx #3
首先,你说的这个问题与 code frist 无关,这是一个纯数据库问题。 盲猜一手你想说的是:删除了迁移之后,code frist 会报数据库不一致的错误;无法更新数据库的同时程序正常运行? |
5
dswyzx 2020-10-19 13:07:01 +08:00 via iPhone
@yeqiu code first 迁移 db 问题,这就是其弊端所在呀,若是没有这个场景那确实不用在意。
版本控制表我的认知是交给系统维护,是想请教你有没有别的方法的。 看来我的友情提示有点脱离实际不同情况而言了。祝早日找到合适人选 |
6
Rwing 2020-10-19 13:14:26 +08:00
确实这个问题跟 code first 无关吧
|
7
yeqiu OP @dswyzx #5
如果问题是"我手动修改了数据结构,如何让 code first 不报需要迁移的异常?"这个的话,实际上是可以的。 参考: https://www.thereformedprogrammer.net/ef-core-taking-full-control-of-the-database-schema/ 另外确实可以给__MigrationHistory 添加自定义数据,参考: https://docs.microsoft.com/zh-cn/ef/ef6/modeling/code-first/migrations/history-customization 你是想要只更新数据库的表结构,而不更新模型??? 虽然可以,但我强烈不建议你这样做。修改数据结构是非常重要且危险的行为,所有相关的人员、代码都需要进行评估与测试。 从软件开发的角度看,代码方面的强制约束要比任何其他方式的约束都要有用,为了让代码不报错而抛弃这种约束是非常愚蠢的行为。试想一下,模型中某个字段的长度是 10,但数据库中这个字段的长度是 100,这将会造成多大的混乱?? |
8
Removable 2020-10-19 14:08:06 +08:00
啊,人在合肥表示还是挺想去南京工作的,要是早两年就好了
|
9
dswyzx 2020-10-19 18:22:21 +08:00
@yeqiu 声明一下,我说的那个场景是使用 code first 构建的 db,使用 Update-Database -Script 生成迁移脚本发觉修改字段长度的操作涉及索引重建,而又是线上不能停机的 db,为防止迁移操作影响业务,才想请教遇到这种问题有什么好的解决办法
按照我的从业经验来看,db first 更适合团队作业,线上的热更新.code first 更适合单人快速开发 |
10
yeqiu OP 人工置顶一下,试试看会不会多收几个简历
|
11
forgottencoast 2023-08-28 17:53:44 +08:00
@dswyzx
我们用 code first (.Net framework 版本的),但是索引不通过它来维护。 数据库由 DBA 维护(可以用 Update-Database -Script 生成迁移脚本,然后评估要不要修改)。 |