V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 外包信息请发到 /go/outsourcing 节点。
• 不要把相同的信息发到不同的节点
yeqiu
V2EX  ›  酷工作

[南京] .net 开发工程师

  •  
  •   yeqiu · 2020-10-19 11:44:21 +08:00 · 1859 次点击
    这是一个创建于 1501 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    工作内容:

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

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

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

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

    第 1 条附言  ·  2020-10-19 12:15:11 +08:00
    发简历+vx:13501206347
    11 条回复    2023-08-28 17:53:44 +08:00
    dswyzx
        1
    dswyzx  
       2020-10-19 12:10:38 +08:00
    友情提示:code first 的项目上线之后维护真的好难.
    一直想不通 ABP 这样的示例项目这么推崇 code first.看有没有大佬帮忙解惑
    yeqiu
        2
    yeqiu  
    OP
       2020-10-19 12:13:00 +08:00
    @dswyzx #1

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

    首先,你说的这个问题与 code frist 无关,这是一个纯数据库问题。
    盲猜一手你想说的是:删除了迁移之后,code frist 会报数据库不一致的错误;无法更新数据库的同时程序正常运行?
    dswyzx
        5
    dswyzx  
       2020-10-19 13:07:01 +08:00 via iPhone
    @yeqiu code first 迁移 db 问题,这就是其弊端所在呀,若是没有这个场景那确实不用在意。
    版本控制表我的认知是交给系统维护,是想请教你有没有别的方法的。
    看来我的友情提示有点脱离实际不同情况而言了。祝早日找到合适人选
    Rwing
        6
    Rwing  
       2020-10-19 13:14:26 +08:00
    确实这个问题跟 code first 无关吧
    yeqiu
        7
    yeqiu  
    OP
       2020-10-19 13:41:44 +08:00   ❤️ 1
    @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
        8
    Removable  
       2020-10-19 14:08:06 +08:00
    啊,人在合肥表示还是挺想去南京工作的,要是早两年就好了
    dswyzx
        9
    dswyzx  
       2020-10-19 18:22:21 +08:00
    @yeqiu 声明一下,我说的那个场景是使用 code first 构建的 db,使用 Update-Database -Script 生成迁移脚本发觉修改字段长度的操作涉及索引重建,而又是线上不能停机的 db,为防止迁移操作影响业务,才想请教遇到这种问题有什么好的解决办法
    按照我的从业经验来看,db first 更适合团队作业,线上的热更新.code first 更适合单人快速开发
    yeqiu
        10
    yeqiu  
    OP
       2020-10-20 14:25:16 +08:00
    人工置顶一下,试试看会不会多收几个简历
    forgottencoast
        11
    forgottencoast  
       2023-08-28 17:53:44 +08:00
    @dswyzx
    我们用 code first (.Net framework 版本的),但是索引不通过它来维护。
    数据库由 DBA 维护(可以用 Update-Database -Script 生成迁移脚本,然后评估要不要修改)。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3211 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 13:00 · PVG 21:00 · LAX 05:00 · JFK 08:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.