2012-02-16 4 views
1

この文が何も返さない理由と解決方法を教えてください。両方がExpressions with Expression return null

IList<MembershipUser> users = Membership.GetAllUsers().Cast<MembershipUser>() 
.Where(x => x.UserName.StartsWith(alpha) == true).ToList(); 

IList<MembershipUser> users = Membership.GetAllUsers().Cast<MembershipUser>() 
.Where(x => x.UserName.StartsWith(alpha)).ToList(); 
+0

[Entity Frameworkのオペレータに似ていますか?](http://stackoverflow.com/questions/1033007/like-operator-inentity-framework)の重複が考えられます。私はそれがあなたの環境で同様に動作するはずだと思います。 –

+1

'Membership.GetAllUsers()'は何を返しますか? – mauris

+0

@ thephpdeveloper - [Membership.GetAllUsers](http://msdn.microsoft.com/en-us/library/dy8swhya.aspx)は、[System.Web.Security.MembershipUserCollection](http://msdn.microsoft。 com/ja-us/library/system.web.security.membershipusercollection.aspx)。 –

答えて

3

それはこの

IList<MembershipUser> users = Membership.GetAllUsers().Cast<MembershipUser>() 
.Where(x => x.UserName.StartsWith(alpha, StringComparison.OrdinalIgnoreCase)).ToList(); 
を使用することをお勧めします大文字と小文字が区別されます
+0

これは実際にはsimonsより優れているので、私はこれがより良いので、これを答えとしてマークします – ONYX

3

StartsWithを動作しないユーザー名はアルファベットから文字で始まる[ユーザー

アルファ=「A」「B」「C」「D」など 何イムTODOをしようとしています

使用x.UserName.ToLower().StartsWith(alpha.ToLower())