我尝试使用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