EF Code First ile oynuyorum ve şimdi özel bir MembershipProvider uygularken sorunla karşılaştım. EF Kod Birinci İçin Membership Kullanıcı ve Varlık Çerçeve Kodu İlk
böyle kendi kullanıcı sınıfını yarattı: Ben de zaten EF için benim özel MembershipProvider bazı işlevlerini uygulamayapublic class User
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
[Required]
public string UserName { get; set; }
[Required]
public string Password { get; set; }
[Required]
public string Email { get; set; }
[Required]
public bool IsApproved { get; set; }
public DateTime? LastLoginDate { get; set; }
public DateTime? LastActivityDate { get; set; }
[Required]
public DateTime CreationDate { get; set; }
[Required]
public string ApplicationName { get; set; }
}
, ama bazıları şimdi bir parametre veya iki sıra MembershipUser
gerektirir geri dönüş değeri.
public MembershipUser GetUser(string username, bool userIsOnline)
ilk düşüncem MembershipUser
benim Kullanıcı sınıfını miras, ama sonra ben Özellikleri üzerindeki kontrolü kaybeder. Bu ilk EF Kodu ile bile çalışır mı?
Alternatif bir fikir, kullanıcı sınıfım için bir ToMembershipUser() yöntemi oluşturmaktır. Bu bir seçenek mi? Ne düşünmeliyim?
Bunu halletmenin en iyi yolu nedir?
Bu mükemmel çalışıyor gibi görünüyor, teşekkürler! – magnattic
"CustomUser" öğesini "MembershipUser" den miras bıraktım ve sorun, "CustomUser" öğesini Entity Framework kullanarak veritabanına kaydederken ortaya çıktı. Birisi SQL kodunu kullanacaksa, özel MembershipUser için resmi nasıl yapılır: [Nasıl Yapılır: Özel Üyelik Kullanıcısı Uygulaması] (http://msdn.microsoft.com/en-us/library/ms366730.aspx) – twnaing
'Notomple '' veri notuyla 'CusomUser' sınıfına açıklama eklemeyi unutma. Aksi takdirde, 'CustomUser' Benzersiz Anahtar içermeyen hakkında hata alırsınız. – twnaing