[南京] .net 开发工程师

2020-10-19 11:44:21 +08:00
 yeqiu

项目:家有鲁班、企业内部应用

工作内容:

  1. 使用 c#实现 api,并配合前端进行调试。
  2. 实现技术探索性质的 demo,可能的方向企业效率、人工智能应用

薪资:8k-10k,13 薪,每季度 4000 奖金,五险一金,饮料不限量

要求:大专以上学历、1 年以上工作经验、良好英语阅读能力

加分项:熟悉 ef code frist 、熟悉 result api 、熟悉 领域驱动开发模式、熟悉 自动化测试

1792 次点击
所在节点    酷工作
11 条回复
dswyzx
2020-10-19 12:10:38 +08:00
友情提示:code first 的项目上线之后维护真的好难.
一直想不通 ABP 这样的示例项目这么推崇 code first.看有没有大佬帮忙解惑
yeqiu
2020-10-19 12:13:00 +08:00
@dswyzx #1

我这都用了好几年了。
具体问题具体分析吧,你有啥问题加我微信,我帮你分析分析。
dswyzx
2020-10-19 12:20:45 +08:00
@yeqiu 哈!来探讨一下,一个字段设置了索引,现在想改变字段 maxlenth,迁移脚本为删除索引,修改字段限制,新建索引。
若是 db 不能停机维护,表数据量又很夸张。怎么来不停机维护一下呢?
by the way:请教一下 db 里维护版本的那张表可以手动维护版本信息吗
yeqiu
2020-10-19 12:34:38 +08:00
@dswyzx #3

首先,你说的这个问题与 code frist 无关,这是一个纯数据库问题。
盲猜一手你想说的是:删除了迁移之后,code frist 会报数据库不一致的错误;无法更新数据库的同时程序正常运行?
dswyzx
2020-10-19 13:07:01 +08:00
@yeqiu code first 迁移 db 问题,这就是其弊端所在呀,若是没有这个场景那确实不用在意。
版本控制表我的认知是交给系统维护,是想请教你有没有别的方法的。
看来我的友情提示有点脱离实际不同情况而言了。祝早日找到合适人选
Rwing
2020-10-19 13:14:26 +08:00
确实这个问题跟 code first 无关吧
yeqiu
2020-10-19 13:41:44 +08:00
@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,这将会造成多大的混乱??
Removable
2020-10-19 14:08:06 +08:00
啊,人在合肥表示还是挺想去南京工作的,要是早两年就好了
dswyzx
2020-10-19 18:22:21 +08:00
@yeqiu 声明一下,我说的那个场景是使用 code first 构建的 db,使用 Update-Database -Script 生成迁移脚本发觉修改字段长度的操作涉及索引重建,而又是线上不能停机的 db,为防止迁移操作影响业务,才想请教遇到这种问题有什么好的解决办法
按照我的从业经验来看,db first 更适合团队作业,线上的热更新.code first 更适合单人快速开发
yeqiu
2020-10-20 14:25:16 +08:00
人工置顶一下,试试看会不会多收几个简历
forgottencoast
265 天前
@dswyzx
我们用 code first (.Net framework 版本的),但是索引不通过它来维护。
数据库由 DBA 维护(可以用 Update-Database -Script 生成迁移脚本,然后评估要不要修改)。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/716332

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX