基本抽象クラスを継承するLINQ2SQLクラスからLINQクエリを実行する際に問題が発生します。抽象クラスから継承するLINQ2SQL/WCFクラスに対するLINQクエリの例外
[DataContract]
public abstract class AbstractClass
{
[DataMember]
public abstract int Foo { get; set; }
}
// LINQ2SQL class.
[DataContract]
public class ConcreteClass : AbstractClass
{
[DataMember]
public override int Foo { ... }
}
コンクリートクラスに対してLINQクエリを実行しようとすると問題が発生します。私は、 "Class member AbstractClass.Fooはマップされていません"というSystemExceptionを取得します。クエリがCocnreteClass反対しているが、エラーがAbstractClass上でどのように
// Sample LINQ query.
result = from c in dataContext.ConcreteClasses where c.Foo == 42 select c;
お知らせ:クエリは次のようになります。どんなアイデアがここで起こっていますか?
HRMは、私は、コンパイラは、パラメータなしのコンストラクタを自動生成と信じています。いずれにしても、私はあなたの提案に従って非抽象化保護されたコンストラクタを追加しようとしましたが、それは助けにはなりませんでした。 –