Chcę powiązać gridview przez Entity Framework, ale wyrzuca błąd jak-anonimowy typ nie może mieć wiele właściwości o tej samej nazwie
Anonimowy typu nie może mieć wiele właściwości o tej samej nazwie Podmiot Framwrok
Oto moja metoda.
public void UserList(GridView grdUserList)
{
using (TreDbEntities context = new TreDbEntities())
{
var query =(from m in context.aspnet_Membership
from u in context.aspnet_Users
join usr in context.Users
on new { m.UserId, u.UserId }
equals new { usr.MembershipUserID, usr.UserId }
into UserDetails
from usr in UserDetails
select new {
CreationDate = m.CreateDate,
email = m.Email,
UserName = u.LoweredUserName,
Name = usr.FirstName + usr.LastNameLastName,
Active=usr.IsActive
}).ToList();
}
}
To pokazuje błąd tutaj. usr.UserId.
Możliwe. Jedyną rzeczą jest to, że kod jest mniej zrozumiały, ponieważ pierwszy UserId może nie mieć nic wspólnego z 'MembershipUserID'. Użycie dwóch "anonimowych" nazw wskazuje, że właściwości są po prostu symbolami zastępczymi. –
@GertArnold first use id ma coś wspólnego z członkostwem :) to id z tablicy aspnet_Membership. Również myślę, że 'u1' jest dużo mniej oczywiste niż" MembershipUserID ". Przegłosowałem twoją odpowiedź, więc jest ona również całkowicie poprawna i wyjaśnia powód błędu :) –
Oczywiście, nie martw się! Po prostu podoba mi się mój kod, który pokazuje, że wymuszone są identyczne nazwy właściwości. Może tylko kwestia gustu. –