開箱,System.Web.Security.Membership實行一對夫婦的搜索方式:如何最好地實現對會員提供自定義搜索
- FindUsersByEmail
- FindUsersByName
我使用WSAT project from CodePlex來管理我的會員資格數據庫。該工具在ProfileCommon類中實現額外的配置文件屬性。
假設我在用戶的個人資料中有一個名爲的公司。
我需要實現一個自定義搜索方法來搜索公司屬性,我想這樣做的代碼。不想編寫存儲過程(因爲所有配置文件屬性都存儲在WSAT工具的1個數據庫列中)。
像這樣的事情顯然不是這樣做的正確的方式,但在這裏它只是證明訪問用戶的配置文件屬性:
private MembershipUserCollection SearchByFirm(string firmName, MembershipUserCollection allRegisteredUsers)
{
MembershipUserCollection searchResults = new MembershipUserCollection();
foreach (MembershipUser user in allRegisteredUsers)
{
ProfileCommon profile = Profile.GetProfile(user.UserName);
if (profile.Firm.ToLowerInvariant().Contains(firmName.ToLowerInvariant()))
{
searchResults.Add(user);
}
}
return searchResults;
}
我可以把它變成一些LINQ的善良?
意識到MembershipUserCollection不實現IEnumerable無論如何,這使事情變得複雜一點 –
2009-01-07 17:04:07