我正在使用aspx webform构建一个列出产品的网页。为此,在与我的列表相对应的用户控件中,我遍历了我的产品,并按产品注入了一个新的用户控件:
foreach (Product p in this.Products)
{
ucProductItem.product = p;
%>
<uc:ucProductItem runat="server" ID="ucProductItem" />
<%
}
%>
这工作正常,我对此表示满意...但并非完全如此,因为我觉得这很丑陋和混乱。我不喜欢在模板中混合使用标记和代码,并且我尝试尽可能多地使用标记(而且我在整个项目中都遇到了这个问题)。
因此,我想通过标记将产品p
传递给新的ucProductItem
用户控件,我自然尝试了类似的事情:
<uc:ucProductItem runat="server" ID="ucProductItem" product=p />
我知道这对于诸如字符串和整数之类的原始类型是可行的,但是我不知道该如何使用对象。
有可能吗?又如何?