C# 查询无法执行

C# 查询无法执行,c#,entity-framework,linq-to-entities,repository,C#,Entity Framework,Linq To Entities,Repository,我有一种感觉,答案将是非常简单的,但出于某种原因,我一直在打心理障碍。我有一个使用MVVM模式的项目,该模式包括实体框架,并实现了一个存储库。我创建了一个DTO,它只包含3个属性,表示我拥有的某个实体中的字段。DTO的名称为SpecialGroupDTO,看起来非常简单: public class ParticularGroupDto : BasicModelBase { private string _groupName; private Guid _groupId;

我有一种感觉,答案将是非常简单的,但出于某种原因,我一直在打心理障碍。我有一个使用MVVM模式的项目,该模式包括实体框架,并实现了一个存储库。我创建了一个DTO,它只包含3个属性,表示我拥有的某个实体中的字段。DTO的名称为
SpecialGroupDTO
,看起来非常简单:

public class ParticularGroupDto : BasicModelBase
{
    private string _groupName;
    private Guid _groupId;
    private Guid? _managerUserId;


    public string GroupName
    {
        get { return _groupName; }
        set { SetValueAndNotify(() => GroupName, ref _groupName, value); }
    }

    [Key]
    public Guid GroupId
    {
        get { return _groupId; }
        set { SetValueAndNotify(() => GroupId, ref _groupId, value); }
    }
    public Guid? ManagerUserId
    {
        get { return _managerUserId; }
        set { SetValueAndNotify(() => ManagerUserId, ref _managerUserId, value); }
    }
}
在我的
Repository.Group
文件中,我有一个方法:

public ParticularGroupDto GetParticularGroup(Guid id)
{
    var manager = DevForce.CreatePrimeEntities();
    IEntityQuery<ParticularGroupDto> query = from k in manager.Groups
                                               where k.GroupId == id
                                               select new ParticularGroupDto
                                               {
                                                   GroupName = k.GroupName,
                                                   GroupId = k.GroupId,
                                                   ManagerUserId = k.ManagerUserId
                                               };

    IEnumerable<ParticularGroupDto> list = query.Execute();
    ParticularGroupDto firstParticularGroupDto = query.FirstOrDefault();
    return firstParticularGroupDto;
}

它只是简单地获取一个guid,该guid类似于已加载的CurrentEntity的GroupId(在本例中,它是来自Group entity的GroupId)。我也通过调试来验证是否正确传递了它。

InnerException:null消息:无法将“System.Reflection.RtFieldInfo”类型的对象强制转换为“System.Reflection.PropertyInfo”类型。
 ParticularGroup = Repository.GetParticularGroup(CurrentEntity.GroupId);