2010-03-14 64 views
2

我有一個相當惱人的LinqToSql問題。我創建了一個從DataContext中的類派生的類。[LINQ] InsertOnSubmit NullReferenceException

問題是,只要我使用「InsertOnSubmit(this);」在這個派生類,我得到一個NullReferenceException。

我見過一些有同樣問題的人。但他們已經使用了一個自定義的構造函數,並通過調用「:this()」來解決這個問題,就像這個線程:http://social.msdn.microsoft.com/Forums/en-US/linqprojectgeneral/thread/0cf1fccb-6398-4f16-920b-adef9dc4ac9f

不同之處在於我使用了一個默認的構造函數來調用基構造函數,任何問題!

有人可以幫我這個,開始討厭!

謝謝:)

+0

你能後的堆棧跟蹤你拋出異常拋出?這是找出異常的最佳起點。 – 2010-03-14 12:20:23

+0

當然! E:\ Users \ Kurt \ Documents \ Visual Studio 2008 \ Projects \ MDK \ MDK.Security \ Messaging \ Message.cs中的InsertOnSubmit(TEntity實體)MDK.Security.Messaging.Message.Send():第62行MDK.Tests .MessagingTests.UsersCanSendMessages()E:\ Users \ Kurt \ Documents \ Visual Studio 2008 \ Projects \ MDK \ MDK.Tests \ MessagingTests.cs中:第89行 – 2010-03-14 12:33:06

+0

重複:http://stackoverflow.com/questions/499436/linq -insertonsubmit-nullreferenceexception等等。它們都有兩種解決方案之一,具體取決於它是部分派生類還是派生類。 – 2010-03-14 17:39:02

回答

0

這是一種方式:https://stackoverflow.com/....

如果你只是想預填充某些領域,另一種可能是:

partial class MyLinqClass { 
    string Text = "Default"; 

    public MyLinqClass AsOne() { 
     Text = "One"; 
     ... 
     return this; 
    } 
} 

var x = new MyLinqClass().AsOne(); 
context.InsertOnSubmit(x); // x is type MyLinqClass 
相關問題