我有一个名为 UserInfo 的类,其中包含有关给定用户的详细信息。
代码中有几个地方可能会查询数据,我希望有一个函数来用来自 Linq 查询的相应数据填充 UserInfo 对象。
var userData = dc.Users.Where(λ => (λ.Login == username) && λ.Active)
.Select(λ => new { λ.ID, Salt = λ.Seasonings.Single().Salt, λ.Login, λ.PassHash, λ.Admin, λ.Trusted, λ.E_mail, λ.Name, λ.Phone, λ.Note, λ.RegistrationDate }).SingleOrDefault();
string tmppass = generatePassHash(password, userData.Salt);
if (userData.PassHash.Trim() == tmppass.Trim())
{
ID = userData.ID;
// Here is the stuff i'd like to move to a function
_user._id = userData.ID;
_user._userState = State.NotAuthorized;
_user._username = userData.Login;
_user._name = userData.Name;
_user._email = userData.E_mail;
_user._phone = userData.Phone;
_user._notes = userData.Note;
...
}
如何正确设置函数以接受此匿名类型作为参数?我需要声明一个新接口还是有更简单的方法?
谢谢您的帮助!
PS-对于过多的下划线感到抱歉,嵌套类使事情变得有些混乱。