我嘗試使用LINQ to SQL。 Everythign很棒,但它似乎對不可變對象不友好。LINQ to SQL和不變性
LINQ to SQL需要我爲我的不可變類創建一個無參數構造函數。但我希望它是不可變的,所以我只想讓人們每次都用所有必需的參數創建它。
同樣,我需要對所有成員都有setter。
有沒有辦法讓我仍然可以使用LINQ 2 SQL而不放棄我的不變性?
這裏是我的代碼:
DataContext db = new DataContext("myconnectistring");
Table<MyImmutableType> myImmutableObjects = db.GetTable<MyImmutableType>();
這將引發約沒有setter和不帶參數沒有默認構造函數的異常。
請你詳細指定更詳細的問題是什麼?你想要達到什麼目的,你嘗試了什麼,爲什麼失敗? – Vlad 2010-11-03 16:06:01
@Vlad我把導致問題的代碼 – 2010-11-03 16:09:06