1

以下に示すように、多対多の関係シップのナビゲーション プロパティを含むサーバー側コードを記述しました。

var result = _contextProvider.Context.ResourceProperty.Include("AssociatedStandardResourceProperty.AssociatedLists").Where(t => t.ResourceId == resId);
        //Return matching resource properties
        return result;

ただし、そよ風のデータコンテキストからデータを取得しようとすると、以下に示すようにクエリ実行エラーが発生します。

var getResourceProperties = function (resourceId, resourcePropertyObservable) {

        var query = EntityQuery.from('GetResourceProperties')
            .withParameters({ resourceId: resourceId })
            .expand("AssociatedStandardResourceProperty.AssociatedLists");

        return manager.executeQuery(query)
            .then(querySucceeded)
            .fail(queryFailed);

        function querySucceeded(data) {
            if (resourcePropertyObservable) {
                resourcePropertyObservable(data.results);
            }
            log('Retrieved listObservable from remote data source',
                data, true);
        }
    };

クエリが失敗し、queryFailed 関数に記述したログ メッセージですべてのデータが取得されます。

また、クライアント側で展開を削除し、サーバー側でインクルードを削除してから、クライアント側で展開を含めて確認しました。

どうすればうまくいくか教えてください。

ありがとう

4

2 に答える 2

1

私は、問題が 2 つのエンティティ間の多対多のマッピングによるものであることを確認しました。関係を削除した後、 associatedEntities データを取得できます

于 2013-08-08T07:13:17.243 に答える
0

ここでは推測ですが、サーバーでインクルードを実行している場合、クライアントで展開する必要はなく、その逆も同様です。あなたの例は両方を行っているようです。表示されるエラー メッセージは何ですか?

于 2013-06-11T17:12:40.450 に答える