0

MVC アプリケーションでフォームに入力すると、次のエラーが表示されます。

UpdateException was unhandled by user code

Unable to update the EntitySet 'Customer' because it has a DefiningQuery and no <InsertFunction> element exists in the <ModificationFunctionMapping> element to support the current operation.

私の顧客テーブルには、ID (PK)、名前、年齢、住所、およびタイムスタンプがあります。

フォームには名前とアドレスのみを入力できます(理由はわかりません-MVC、ADO.NETは初めてです)

これは私のコードです:

 [HttpPost]
    public ActionResult Create(Customer customer)
    {
        customer.ID = 5;
        db.Customers.AddObject(customer);
        db.SaveChanges();
        return View();
    }

当面の間、ハードコーディングされた一時的なソリューションとして customer.ID = 5 を残します。

4

2 に答える 2

0

Customer テーブルに主キーがありますか? このエラーは、テーブルに主キーがない場合、またはエンティティ セットがデータベース ビューにマップされている場合に発生します。

于 2012-07-29T17:38:35.510 に答える
0

が主キーの場合ID、なぜそれを更新するのですか? 残りのプロパティを更新する必要があります。

[HttpPost]
public ActionResult Create(Customer customer)
{
    customer.Name= "New name";
    db.Customers.AddObject(customer);
    db.SaveChanges();
    return View();
}
于 2012-07-29T17:43:56.893 に答える