none
(已解決)LINQ to SQL 問題:為什麼我用submitchange會無法建立進入DB勒 RRS feed

  • 問題

  • 環境:XP
    平台:VS2008    SQL 2005

    LINQ裡面的mdbl的箭頭是    table 1->   table 2 -> table 3   藉著 name
                                            table 4 -> table2                 藉著id

    我在使用LINQ藉著關係去建立其他table的資料,呼叫順序是:main program ->BL->DA->DA.LINQ
    程式碼大概是這樣的型態,function裡面沒有做是只有呼叫的我就不打嚕

    table1 x1=new table1();
    table2 x2=new table2();
    //資料設定,table的key都有設定
    //我想設定table3中某一個資料,不是key的
    table3 x3=new table3();   //此段如果不加可以原本關聯姓建立出table3的資料
    x3.temp="test";               //可是加了這三行,使得table3的資料會一樣都沒有關聯到
    x2.table3=x3;                 //怎麼會這樣呢?!
    x1.table2=x2;

    db.table1.InsertOnSubmit(x1);
    db.SubmitChanges();


    ------------------------------------------------------------------------------------------------------------------------------------
    而在linq.design.cs裡面
    public table2{
    this.table4 = new entitySet<table4>(new Action<table4>(this.attach_table4), new Action<tabl34>(this.detach_table4));
    //這樣跟下面的存取有什麼不同,又會影響到什麼?
    this.talbe3=default(EntityRef<table3>);
    }

    以上結果執行完宣告 table2 x2之後  x2._table4  ,  x2._table3    ,   x2.table4   都非NULL,但是 x2.table3 為 NULL

    -------------------------------------------------------------------------------------------------------------------------------------

    等SUBMITCHANGE完後,直接修改,硬解
    • 已編輯 jcyang95 2009年10月23日 上午 08:21
    • 已變更類型 jcyang95 2009年10月23日 上午 08:23
    2009年10月23日 上午 03:13

解答

所有回覆