2012-03-05 5 views
0

`아래 엔티티 프레임 워크 4.1 모델이 있습니다.WCF 및 Entity Framework 4.1 POCO

public partial class AWLTR2Model : DbContext 
{ 
    public AWLTR2Model() 
     : base("name=AWLTR2Model") 
    { 
     Configuration.ProxyCreationEnabled = false; 
    } 

    protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
     throw new UnintentionalCodeFirstException(); 
    } 

    public DbSet<Address> Addresses { get; set; } 
    public DbSet<Customer> Customers { get; set; } 
    public DbSet<CustomerAddress> CustomerAddresses { get; set; } 
} 

나는 WCF 서비스를 통해 이들 엔티티 (은 BasicHttpBinding을) 노출,하지만 내 클라이언트에서, 내가 추가 할 수 없습니다입니다

using System; 
using System.Collections.Generic; 
using System.Runtime.Serialization; 
public partial class CustomerAddress 
{ 

    public int CustomerID { get; set; } 
    public int AddressID { get; set; } 
    public string AddressType { get; set; } 
    public System.Guid rowguid { get; set; } 
    public System.DateTime ModifiedDate { get; set; } 

    public virtual Address Address { get; set; } 
    public virtual Customer Customer { get; set; } 

} 

다른 이름 공간 AWLTR2.Entity에 POCO 엔티티 아래는이 자식 엔티티를 아래처럼 부모 엔티티에 연결합니다.

add 메서드가 클라이언트에 없지만 WCF를 노출하지 않고이 작업을 수행 할 수 있습니다. 다음과 같습니다. c.CustomerAddresses.Add (ca);

한 번에 주소와 고객 주소와 함께 고객을 추가하는 방법을 쓰고 싶습니다. 객체 프레임 워크를 사용하여 엔티티 프레임 워크 4.0을 사용하여 동일한 결과를 얻었습니다. 하지만 Dbcontext에서는 그렇게 할 수 없었습니다.

단서가 있습니까?

답변

0

Add 메서드가 클라이언트에 없으면 서비스 참조를 WCF 서비스에 추가했지만 컬렉션의 기본 형식을 변경하지 않았 음을 의미합니다. 기본값은 배열입니다.

서비스 참조를 구성하고 고급 설정에서 컬렉션 유형을 목록으로 변경하십시오.

+0

감사합니다. Ladislav Mrnka. 그것은 일했다 !!! 휴 ... –