zoukankan      html  css  js  c++  java
  • 一个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开


  • 相关阅读:
    UltraEdit程序设置添加到右键菜单
    UltraEdit加入到右键菜单中
    vim常用命令
    Linux vi命令大全
    vi/vim 计算搜寻关键字数量
    vi 删除全部内容
    vi中全选的命令或者快捷方式
    VI打开和编辑多个文件的命令
    vi/vim 查找替换使用方法
    VMware workstation 与 VMware GSX Server 的区别
  • 原文地址:https://www.cnblogs.com/ywolf123/p/1578897.html
Copyright © 2011-2022 走看看