【问题标题】:If statement error in aspx pageaspx 页面中的 if 语句错误
【发布时间】:2015-03-02 12:53:18
【问题描述】:

我正在做一个产品页面,我想要“您可能还需要这些产品”。

例如,如果 productID 为 2,则显示指向 productID 5 的链接。

我已经尝试过这样做:

<% if(Item.ProductID == 2) { %>
    <a href="ProductDetails.aspx?productID=5">
        <img src="/Catalog/Images/suihkukaappi.png"
            width="100" height="75" style="border: solid" /></a>
<% } %>

但它给了我错误“名称'项目'在当前上下文中不存在。”如果我取消这个if 声明,链接就可以正常工作,但每个产品页面都是同一个链接。

这是我在 ItemTemplate 中的代码,来自 aspx 页面:

<ItemTemplate>
    <div>
        <h1><%#:Item.ProductName %></h1>
    </div>
    <br />
    <table>
        <tr>
            <td>
                <img src="/Catalog/Images<%#:Item.ImagePath %>" style="border:solid; height:150px; width:175px;" alt="<%#:Item.ProductName %>"/>
            </td>
            <td>&nbsp;</td>  
            <td style="vertical-align: top; text-align:left;">
                <b>Tuoteselostus:</b><br /><%#:Item.Description %>
                <br />
                <span><b>Hinta:</b>&nbsp;<%#: String.Format("{0:c}", Item.UnitPrice) %></span>
                <br />
                <span><b>Tuotenumero:</b>&nbsp;<%#:Item.ProductID %></span>
                <br />
            </td>
        </tr>
        <tr>
            <td>&nbsp;</td>
        </tr>
        <tr>
            <td>
                <% if(Item.ProductID == 2) { %>
                    <a href="ProductDetails.aspx?productID=5">
                        <img src="/Catalog/Images/suihkukaappi.png"
                            width="100" height="75" style="border: solid" />
                    </a>
                <% } %>
            </td>
        </tr>
    </table>
</ItemTemplate>

【问题讨论】:

  • 您可以将Visible 属性与runat=server 一起设置为符合您的条件的锚点。

标签: asp.net if-statement


【解决方案1】:

尝试使用Container.DataItem 并将其转换为您正在迭代的相应模型:

<% if(((Product)Container.DataItem).ProductID == 2) { %>

【讨论】:

  • 我试过了,但从 Product 中说“找不到类型或命名空间名称'Product'(您是否缺少 using 指令程序集引用?)。Visual Studio 给我选项来改变那个' (KodinPutki.Models.Product).Container...' 并且名称 'Container' 在当前上下文中不存在。我真的不知道有什么问题。
猜你喜欢
  • 2011-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多