2012-12-07 5 views
0

약간의 문제가 있습니다. 내 엔티티 세트를 업데이트하려고 할 때마다 다음 오류가 발생합니다. 그것은 DefiningQuery을 가지고 있으며, 더 InsertFunction 요소가 현재 작업을 지원하기 위해 ModificationFunctionMapping 요소에 존재하지 않는 때문에 EntitySet '은 shoppingCart'을 업데이트 할 수엔터티 프레임 워크 오류

수 없습니다.

코드는 다음과 같습니다`

public void AddItem(string cartID, string productID, string quantity) 
     { 
      using (CommerceEntities db = new CommerceEntities()) 
      { 
       try 
       { 
        var myItem = (from c in db.ShoppingCarts 
            where c.CartID == cartID && 
             c.ProductID == productID 
            select c).FirstOrDefault(); 
        if (myItem == null) 
        { 
         ShoppingCart cartadd = new ShoppingCart(); 
         cartadd.CartID = cartID; 
         cartadd.Quantity = quantity; 
         cartadd.ProductID = productID; 
         cartadd.DateCreated = DateTime.Now; 
         db.ShoppingCarts.AddObject(cartadd); 
        } 
        else 
        { 
         myItem.Quantity += Convert.ToInt32(quantity); 
        } 
        db.SaveChanges(); 
       } 
       catch (Exception exp) 
       { 
        throw new Exception("ERROR: Unable to Add Item to Cart - " +exp.Message); 
       } 
      } 
     } 

`

저를 도와주세요. 필요한 경우 더 많은 정보를 제공 할 수 있습니다.이 엔터티 프레임 워크 모델을 처음 사용하고 This page에 대한 자습서를 따르면됩니다.

업데이트 : 기본 키를 추가하고 전체 데이터베이스를 다시 디자인했습니다.

System.Data.UpdateException 사용자 코드 메시지로 처리되지 않은이었다 항목을 업데이트하는 동안 오류가 발생 = : 이제 오류로 변경. 세부 정보 내부 예외를 참조하십시오.

+0

[스레드] (http://social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/220262bd-85d4-4f29-96a8-4a7d1d2c8293)이 (가) 도움이 될 수 있습니다. –

+1

이것을 확인하십시오 [스레드] (http://stackoverflow.com/a/7583791/1551730) –

+0

모든 테이블에 기본 키를 추가했는데 문제가있는 것 같습니다. –

답변

0

이는 일반적으로 엔터티 집합이 데이터베이스보기, 사용자 지정 데이터베이스 쿼리 또는 데이터베이스 테이블에 기본 키가없는 경우 매핑됩니다.

+0

고마워요. –