我在使用 c#、html、使用 razor 进行编程时遇到问题,在显示所有注册成员(member)姓名时,从默认数据库 UserProfile 中,我需要显示 UserName
public UsersContext() : base("DefaultConnection")
{
}
public DbSet<UserProfile> UserProfiles { get; set; }
public IQueryable<UserProfile> GetAll(string _UserName)
{
IQueryable<UserProfile> query = this.UserProfiles.FirstOrDefault(x=>x.UserName==_UserName);
return query;
}
在模型中
using (UsersContext _UsersContext = new UsersContext())
{
this.RegisterMembers = _UsersContext.UserProfiles.ToString();
}
在 View 中
注册成员:@Model.RegisterMembers.ToString()
我已经尽力了三天了,但并不是所有方法都能奏效!请帮忙,谢谢!
最佳答案
问题是您正在调用ToString
反对DbSet<UserProfile>
这不会返回您期望的结果。作为起点,您可以将其显示为 CSV:
this.RegisterMembers = String.Join(",", _UsersContext.UserProfiles.Select(x => x.UserName).ToList());
如果您对此不满意,您需要更改 RegisterMembers
的类型至List<UserProfile>
实际上,您需要分配该列表,例如:
this.RegisterMembers = _UsersContext.UserProfiles.ToList();
因此,根据您的观点,您将能够迭代 RegisterMembers
像这样:
<ul>
@foreach (var registerMember in Model.RegisterMembers)
{
<li>@registerMember.UserName</li>
}
</ul>
关于c# - ASP.NET MVC4 显示所有注册用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27191736/