Я пишу настраиваемый поставщик профилей, но я все еще намерен использовать по умолчанию AspNetSqlMembershipProvider в качестве моего поставщика членства. Метод Моих GetAllProfiles() в моем поставщике профилей выглядит следующим образом:Отказывание членства
1 public override ProfileInfoCollection GetAllProfiles(ProfileAuthenticationOption authenticationOption, int pageIndex, int pageSize, out int totalRecords)
2 {
3 // Get the profiles
4 IQueryable<Profile> profiles = _profileRepository.GetAllProfiles();
5
6 // Convert to a ProfileInfoCollection
7 ProfileInfoCollection profileInfoCollection = new ProfileInfoCollection();
8 foreach (Profile profile in profiles)
9 {
10 MembershipUser user = Membership.GetUser(profile.UserId);
11
12 string username = user.UserName;
13 bool isAnonymous = false;
14 DateTime lastActivity = user.LastActivityDate;
15 DateTime lastUpdated = profile.LastUpdated;
16
17 ProfileInfo profileInfo = new ProfileInfo(username, isAnonymous, lastActivity, lastUpdated, 1);
18
19 profileInfoCollection.Add(profileInfo);
20 }
21
22 // Set the total number of records.
23 totalRecords = profiles.ToList().Count;
24
25 return profileInfoCollection;
26 }
Как издевается вызов Membership.GetUser(), так что я могу написать тесты для этого метода? Любые предложения или примеры? Благодарю.
Да, я думал об использовании TypeMock или Moq, но я не видел никаких примеров для этого конкретного сценария. Я буду играть с инъекцией, как вы предложили посмотреть, как это работает. Благодарю. –