0

私は次のC#コードを書きました:

        abcEntities entities = new abcEntities();            
        abc_Lids_New newUserEntry = new abc_Lids_New()
        {
            Lid = lid,
            FName = fname,
            LName = lname,
            Phone = phone,
        };
        newUserEntry.abc_class_Assignments_New = new System.Data.Objects.DataClasses.EntityCollection<abc_class_Assignments_New>();
        foreach (string classId in classIds)
        {
            newUserEntry.abc_class_Assignments_New.Add(new abc_class_Assignments_New()
            {
                Lid = lid,
                classID = classId
            });
        }
        entities.abc_Lids_New.AddObject(newUserEntry);
        entities.SaveChanges();

このコードは、新しいユーザーを表すabc_Lids_Newに新しい行を追加することになっています。このコードは、ユーザーのリッドといくつかのクラスIDに対応するabc_class_assignments_newに行を追加することも想定されています。

ただし、エラーが発生します。Unable to update the EntitySet 'UCV_TF_Assignments_New' because it has a DefiningQuery and no <InsertFunction> element exists in the <ModificationFunctionMapping> element to support the current operation.

最近まで、私はストアドプロシージャでEntity Frameworkを使用しただけだったので、これは私にとって新しいことです。

4

1 に答える 1

0

あなたの"'UCV_TF_Assignments_New" は (この場合、 (ストアド プロシージャ)を作成する必要があります)EntitySetに基づいているか、プライマリ キーがありません (その場合は追加します)。ViewInsertFunction

于 2012-08-10T15:22:09.203 に答える