2012-01-19 9 views
0

Linq2SQLとAutomapperを使って、私のアプリケーションのDALを構築しています。ドメインモデルからLinqModelへLinqToSqlとAutomapperで関連するテーブルをマップする方法

マッピング:

public DataRepository(string connectionString) 
{ 
    Mapper.CreateMap<DomainModel, LinqModel>() 
     .ForMember(x => x.SubLinqModel, opt => opt.MapFrom(src => src.SubDomainModel)) 
    repository = new Linq2SqlRepository<DbDataContext, TDomainModel, TLinqModel>(new DbDataClassesDataContext(connectionString)); 
    } 

ドメインモデルコード:だから

public class DomainModel 
{ 
    public DomainModel() 
    { 
     SubDomainModelProperty = new List<SubDomainModel>(); 
    } 

    public int ID { get; set; } 
    public string Name { get; set; } 
    public List<SubDomainModel> SubDomainModelProperty { get; set; } 
} 

、私たちは、ドメインモデルの1対多の関係を持っています。同じことは、私がLinqModelにしている - 私はこれを実行しようとすると2が1対多のテーブル

をリンクし、私はエラーを持っている:

Trying to map System.Collections.Generic.List`1[SubDomainModel, Version=1.0.0.0,  Culture=neutral, PublicKeyToken=null] to System.Data.Linq.EntitySet`1[SubLinqModel,  Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]. 
Using mapping configuration for LinqModel to DomainModel 
Destination property: SubLinqModel 
Exception of type 'AutoMapper.AutoMapperMappingException' was thrown. 

は、どのように私はこれを達成することができますか?私のコードで何が間違っていますか?

答えて

0

あなたのコードと例外メッセージの部分であるDestination property: SubLinqModelから判断すると、SubLinqModelからSubDomainModelにマップを作成する必要があります。

関連する問題