如何将MembershipUsersCollection绑定到GridView

本文关键字:GridView 绑定 MembershipUsersCollection | 更新日期: 2023-09-27 18:27:57

我正在尝试使用模型绑定填充网格视图。我已将以下代码分配给SelectMethod:

public IQueryable<System.Web.Security.MembershipUser> GridView1_GetData()
{
  return Membership.GetAllUsers();
}

我知道GetAllUsers()返回一个实现ICollection和IEnumerable的MembershipUserCollection,但我得到了以下错误:"无法将类型System.Web.Security.MembershipUserCollection"隐式转换为"System.Linq.IQueryable"

我尝试过使用以下内容:

return (IQueryable&lt;MembershipUser&gt;)Membership.GetAllUsers().AsQueryable();

但我得到了错误的源不是IEnumerable<gt;'

我发现我可以做到这一点:

GridView.DataSource = Membership.GetAllUsers();

但是我不能使用模型绑定。这里有人帮忙吗?

谢谢。

如何将MembershipUsersCollection绑定到GridView

MembershipUserCollection实现了IEnumerable,但没有实现IEnumeraable,因此我们必须强制转换结果,然后将其转换为IQueryable:

public IQueryable<System.Web.Security.MembershipUser> GridView1_GetData()
{
  return Membership.GetAllUsers().Cast<MembershipUser>().AsQueryable<MembershipUser>();            
}