我喜欢 Linq,但很喜欢它,我似乎总是忘记如何使用它。我搜索但似乎找不到合适的答案。这是我的问题
我有两个表 table_2 有 table_1 的外键
table_1
----------
- userID
- Name
tabel_2
----------
- userID
- ownID
- codeKey
现在我有一个对象(用户),我想用 userId 和 name 以及ObservableCollection
table_2 中的所有 userID 行填充
对象样本:
public class User
{
public string Name { get; set; }
public long UserID { get; set; }
public ObservableCollection<Message> Messages { get; set; }
}
public class Message
{
public string CodeKey { get; set; }
public long OwnID { get; set; }
public long UserID { get; set; }
}
我尝试执行以下操作;它有效,但不确定它是否是正确的做法:
var request = from tb1 in db.table_1
select new User()
{
Name = tb1.Name,
UserID = tb1.UserID,
Messages = new ObservableCollection<Message>(
from tb2 in db.table_2
where tb2.UserID == tb1.UserID
select new SmsMessage()
{
CodeKey=tb2.CodeKey,
OwnID = tb2.ownID,
UserID = tb2.UserID
})
};
return new ObservableCollection<User>(request);
感谢您的帮助和时间。