美文网首页.NET Core
.net Core 1.1 开发踩坑

.net Core 1.1 开发踩坑

作者: p了个f | 来源:发表于2017-07-06 19:53 被阅读10次

    环境介绍

    开发环境

    • 系统:Win10家庭版
    • 数据库:Mysql5.7
    • .Net环境:.Net Core1.1

    数据库模型

    image.png

    问题描述

    当我使用封装的ProductService进行数据插入操作时候,总是失败。经过多次测试,始终是这样的问题。最后我更换电脑等等排除了环境问题后。我试着测试直接用EF上下文对象context进行添加操作成功了。从这点可以看出来,应该是我的仓储(BaseRepostory)写的有问题了。然后就一步步跟踪调试检查到底是哪里出现问题了。

    调试模式下问题跟踪

    image.png

    跟踪Service,并查看对象是否赋值正确。经过多次检查一切正常。

    image.png

    跟踪BaseRepostory,检查数据及上下文跟踪对象赋值是否正确。经过多次检查一切正常。

    image.png

    再继续执行下去,报错了。根据报错的内容可以看出,是主键冲突了。但是我做Product的插入操作时,主键gid是数据库自动写入的,并没有给值啊。经常查询报错信息的主键gid信息,发现它是Categories的主键。那么是怎么回事啊?

    image.png

    使用自托管模式再次进行调试,在输出的信息中终于发现了原来是Categories表中执行了“insert”操作。那么就奇怪了,我并没有写它的Add操作啊。经过查询度娘后,发现一篇博文的介绍(http://www.cnblogs.com/CreateMyself/p/6238455.html)。

    解决方案

    image.png

    相关文章

      网友评论

        本文标题:.net Core 1.1 开发踩坑

        本文链接:https://www.haomeiwen.com/subject/splkhxtx.html