• 一个Linq to Sql 的关联小问题,搞死人



    第一段代码 
    1             BookDBLinqDataContext db = new BookDBLinqDataContext();
    2 
    3             book book1 = new book();
    4             book1.name = "book1";
    5 
    6             BookClass bc = new BookClass();
    7 
    8             book1.BookClass = bc;
    9             db.SubmitChanges();


     第二段代码
    1             BookDBLinqDataContext db = new BookDBLinqDataContext();
    2 
    3             book book1 = new book();
    4             book1.name = "book1";
    5 
    6             BookClass bc = new BookClass();
    7 
    8             book1.BookclassID = bc.classID;
    9             db.SubmitChanges();

    这两段代码的功能,我来说下:
    都是创建一个book对象book1和一个BookClass对象bc(当然数据库中设置了以BookClassID字段关联)
    然后把book1的类别设置为bc,
    第一段代码直接将book1的BookClass 属性设置为bc
    第二段代码将book1的BookClassID设置为bc的ID
    看起来差别不大

    可是这两段代码在执行上却有很大的区别,
    第一段代码执行完后,数据库中的Book表和BookClass表中都将产生一条记录
    而第二段代码执行完后,数据库中的记录不发生改变。


    这个看似相似的代码,在执行效果上差别巨大。

    这是我的一个项目中的小插曲,花了我5个小时来找这个问题,愚钝啊
    还是多仔细学习才行啊
    一个小的疏忽,可能会发生很严重的问题

    先写到这里,提醒部分兄弟伙
    NB的砖家笑笑hang开


  • 相关阅读:
    test
    设置section的距离
    UISearchBar的应用
    Centos6.6 系统优化
    Linux系统之间文件传输 scp 命令
    MySQL 数据库安装
    AWS中国EC2 公网IP登录免pemKEY修改shh 配置文件
    Ubuntu 16.04 Chrome浏览器安装flash player插件
    Centos6.6 yum源更新
    qume-kvm 命令管理
  • 原文地址:https://www.cnblogs.com/ywolf123/p/1578897.html
Copyright © 2020-2023  润新知