0

2 つのテーブル (ケースと受信者) の間に次の 1 対多の関係を設定しています。

ケース テーブルには、ID として識別される 1 つの主キー (自動インクリメント) があります。 一対多

ケース テーブルと関連する tblRecipient データが取得されます。

function searchCases(caseID, caseNum)
    {
        var qPredicate;
        if (caseID != '')
        {
            qPredicate = new breeze.Predicate("pkCaseID", "==", parseInt(caseID));
        }
        else if (caseNum != null)
        {
            qPredicate = new breeze.Predicate("CaseNumber", "Contains", caseNum);
        }
        var query = breeze.EntityQuery
            .from("case")
            .where(qPredicate)
            .expand("tblRecipients")
        return manager.executeQuery(query);

    }

ボタンを押して新しい受信者を追加すると、次のコードを使用して新しい受信者エンティティが作成されます。

 function createNewRecipient(CaseID)
    {
        var recipientEntityType = manager.metadataStore.getEntityType("tblRecipient");
        var newRecipient = manager.createEntity(recipientEntityType, {fkCaseID: CaseID});
        return newRecipient;
    }

このコードは次のエラーを返します: エラー: 最初にキーを設定するか、entityType 'AutoGeneratedKeyType' プロパティを 'None' 以外に設定しないと、オブジェクトを EntityManager にアタッチできません

ここに画像の説明を入力

メタデータの AutoGeneratedKeyType には、Case テーブルのように Identity ではなく None が表示されます。何を変更する必要があるか、またはこれを実際にデバッグする方法がわかりません。どんな助けでも大歓迎です。

4

0 に答える 0