Wpis z mikrobloga

Mireczki robię projekt w ASP.NET i mam tą domyślną bazę "Membership Authentication".
Używam entity i chciałbym w jego modelach uzywać user id z "Membership Authentication" tak żeby móc zrobić dowiązanie poprzez foreign key.

Da się tak? Bo podobno dane tego user są trzymane w innej bazie danych?

Czy może olać to i używać swojego pola a dopiero w kontrolerze sprawdzać czy jest takie jak aktualnie zalogowany użytkownik?

Tutaj gość miał identyczny problem ale wgl nie rozumiem rozwiązań (no i chyba nie używał entity)
http://stackoverflow.com/questions/5888877/userid-from-asp-net-membership-authentication

#dotnet #csharp #aspnet #programowanie (nie bijcie) #pytaniedoeksperta
  • 7
@emtei:


moim zdaniem gra niewarta świeczki, musiałbyś zrobić to i tak ręcznie, zrobić pochodny obiekt usera itd, pytanie na ile zalezy Ci na "czystości" kodu, ja bym po prostu sprawdzał sobie ręcznie ID w modelu jeśli tego potrzebujesz biorac login z HttpContext.Current.User.Identity.Name
@emtei:
Natomiast jeśli bardzo byś chciał to zrobić to hmm, może jakiś override na MembershipUser.GetUser(), ja u siebie w jednym projekcie mam wlasny provider i jako że nie korzystam z tej funkcji to mam takie coś np
public override MembershipUser GetUser(string username, bool userIsOnline)
{
DateTime nullTime = new DateTime(1970,1,1);

return new MembershipUser("COŚTAMMembershipProvider", username, "", "", "", "", true, false, nullTime, nullTime, nullTime, nullTime, nullTime);
}