这是我得到的错误“<strong>foreach 语句不能对 object 类型的变量进行操作,因为 object 可以”</p>
在 DAL 中,我有一个如下所示的函数,该函数返回一个对象类型的项目。
public static object GetProfileByUserId(Guid userId)
{
using (CCSDBEntities objDbContext = new CCSDBEntities())
{
var tb = (from p in objDbContext.Membershipstb
join addr in objDbContext.AddressTBs on p.UserId equals addr.UserId
where p.UserId == userId && addr.AddressType == "Billing"
select new
{
p.UserId,
p.Email,
addr.ADDID,
addr.AddressType,
addr.Mobile,
addr.CompanyName,
addr.AddressLine1,
addr.AddressLine2,
addr.City,
addr.State,
addr.Country,
addr.PostalCode
}).ToList();
return tb;
}
}
当我尝试使用对象循环时,它显示错误,例如“foreach 语句不能对对象类型的变量进行操作,因为对象可以”。我不想创建任何其他属性。我只想在我的 UI 上使用对象类型的项目并将它们显示在文本框中。
private void BindProfile(Guid userid)
{
var tb = ccsdal.GetProfileByUserId(userid);
if (tb != null)
{
foreach (var x in tb)
{
// Email.Text = x.Email.Trim();
// phone.Text = x.Mobile;
}
}
}
有什么建议么?我怎样才能做到这一点?