0

Visual Studio Lightswitch 2013 SQL サーバー データ ソースを使用すると、エンティティ A があり、他のエンティティ B、C、... と n:1 の関係があります。そのため、エンティティ A にはタイプ B、C、... のいくつかのナビゲーション プロパティがあります。

HTML クライアントでは、エンティティ A のクエリを発行した後、プロパティ B、C、... はすべて未定義です。これは、次の場合に発生します。

  • 関連するエンティティを含むデータ項目を画面に追加しました (「クエリの編集」で「含まれるデータの管理」機能を使用)。データ項目オブジェクトで load メソッドを使用して、ビジュアル コレクション データをプログラムでロードしました (例: screen.Customers.load(false).then(...) )。

  • 「expand」メソッドを使用してプログラムでデータ サービスを使用した (例: myapp.activeDataWorkspace.SqlData.Customers.expand("Address").execute().then(... )

返されたデータを調べると、すべてのエンティティ インスタンスの「非表示」プロパティ「_」に外部キー フィールドが正しくロードされています。

注: 要求された URL を Fiddler で調べると、クエリが正しいことがわかります。SQL Server が発行したクエリを (Sql Server Profiler を使用して) 調べると、クエリに関連データが含まれていることがわかります。OData クエリを発行すると、すべてのデータが返されることがわかります。クライアント側では、データが逆シリアル化されると、ナビゲーション エンティティが具体化されないようです。

組み込みのデータ ソースで同じアプローチを試すと、うまくいきます (ナビゲーション プロパティは期待どおりに読み込まれます)。

誰でも助けることができますか?

ありがとう。

4

1 に答える 1