ado.net データ サービスで linq-to-sql を使用すると、奇妙なエラーが発生します。リモート データベースに接続する単純な Silverlight アプリケーションがあります。最初に linq-to-sql クラスを追加し、テーブルをデザイナーにドラッグしました。次に、ADO.NET データ サービスを追加し、L2S データ コンテキストを指すように DataService 参照を更新しました。
問題なくコンパイルされました。
IE でサービスを開くとすぐにエラーが発生するため、次の属性をデータ サービスに追加します。
[System.ServiceModel.ServiceBehavior(IncludeExceptionDetailInFaults = true)]
これにより、詳細なエラー メッセージが表示されます。
例外メッセージは、「データ コンテキスト タイプ 'DataClasses1DataContext' には、要素タイプがエンティティ タイプではないトップ IQueryable プロパティ 'table1' があります。IQueryable プロパティがエンティティ タイプであることを確認するか、データ コンテキスト タイプで IgnoreProperties 属性を指定して、このプロパティを無視します。
これは、L2S デザイナーで使用するすべてのデータベース テーブルで発生します。
このエラーは何ですか?なぜエラーが発生するのですか?