使用Automapper CreateMap连接元素

时间:2015-08-03 13:24:48

标签: entity-framework automapper

我有以下EF课程:

public class Request
{
    [Key]
    public virtual int RequestID { get; set; }
    ...
    public virtual List<RequestLinked> RequestLinkeds { get; set; }
}

public class RequestLinked
{
    [Key, Column(Order = 0)]
    [ForeignKey("Request")]
    public int RequestID { get; set; }

    [Key, Column(Order = 1)]
    [ForeignKey("RequestRelated")]
    public int RequestRelatedID { get; set; }

    public virtual Request Request { get; set; }
    public virtual Request RequestRelated { get; set; }
}

我创建了一个这样的DTO:

[DataContract]
public class RequestDTO
{
    [DataMember]
    public int RequestID { get; set; }
    ...
    [DataMember]
    public string RequestRelatedIDs { get; set; }
}

现在我想使用automapper填充我的DTO对象。我需要通过连接1个字符串中的所有元素来填充RequestRelatedIDs来自RequestLinkeds.RequestRelatedID的所有元素。

我试过了:

CreateMap<Request, RequestDTO>()
  .ForMember(x => x.RequestRelatedIDs, o => o.MapFrom(src => string.Join(", ", src.RequestLinkeds.Select(x => x.RequestRelatedID));

但是Select方法突出显示为红色:System.Collections.Generic.List&lt; PLATON.Domain.Models.RequestLinked&gt;&#39;不包含&#39;选择&#39;

的定义

为什么不能执行选择?另一种选择?

感谢。

0 个答案:

没有答案