2014-01-22 137 views
0

一个TransactionTransactionMembers的列表。这个列表总是包含两个项目。选择具有相同的一个属性和不同的另一个对象

一个TransactionMemberTransactionRoleRoleEnum型RoleEnum只有两个值(管理员和编辑器)

我要选择具有内部方法我得到相同的事务和作用RoleEnum.Admin

交易员transactionmember作为参数

public static Transaction SetTransaction(Transaction t, TransactionMember tm) 
{ 
    if(tm.Role == TransactionMember.RoleEnum.Editor) 
    { 
     ... 
    } 
    else 
    { 
     TransactionMember admin = (from t.Members.Where(x=>x.Transaction)) 
    } 
} 
+0

'Transaction'包含'TransactionMembers',而'TransactionMember'包含'Transaction'? – Jonesopolis

+0

是的,这是奇怪的吗? – panjo

+1

@Jonesy我想它是这样的:'class Owner {public IEnumerable Things {get;组; }}类的东西{公众业主{get;组; }}' – Leri

回答

1

试试这个:

TransactionMember admin = t.Members.FirstOrDefault(x => x.Transaction.Equals(t) 
                 && x.Role == RoleEnum.Admin)); 

如果您知道最多只能有一个管理员,请使用SingleOrDefault而不是FirstOrDefault

如果你知道有应该只有一个管理员(不是0或大于1),使用Single代替FirstOrDefault

相关问题