c#
  • asp.net
  • object
  • hyperlink
  • .net-1.1
  • 2013-04-11 35 views 0 likes 
    0

    对于我所有的超链接,我总是收到这个错误,并不确定为什么。asp:超链接对象引用未设置为对象的实例

    我看过所有其他类似的问题,但没有什么帮助。

    下面是超级链接的格式,不断抛出此错误。

    <asp:HyperLink id="BuyLink" runat="server" NavigateUrl='<%# Application["ApplicationPath"].ToString() + "/StoreModules/AddToCart.aspx?PID=" + DataBinder.Eval(Container.DataItem,"ProductID").ToString() %>' ImageUrl='<%# Application["CommonImages"] + "buy_btn.gif" %>' /> 
    

    在此先感谢!

    +0

    在代码后面设置“NavigateUrl”和“ImageUrl”属性有什么问题?我怀疑这是问题所在。如果在代码中设置了 – DGibbs 2013-04-11 16:15:21

    +0

    ,那么调试会更容易。我后面的代码中没有做到的唯一原因是因为这是一个.net 1.1网站,我正在升级到.net 4.0并且只是试图保存代码。在后面的代码中做它是我的最后手段哈哈另外这些超链接是在asp:datagrids @DGibbs – 2013-04-11 16:24:44

    +0

    我会把这个内联代码移到个人隐藏的代码,它_may_不是问题,但如果你升级到4.0我看到没有理由不同时这样做。想想可怜的灵魂必须保持它! – DGibbs 2013-04-11 16:27:47

    回答

    0

    如果您可以接受硬编码ImageUrl属性,那么这应该工作。请注意〜/开始获取应用程序根文件夹的路径:

    <asp:HyperLink ID="BuyLink" runat="server" 
        NavigateUrl='<%# "~/StoreModules/AddToCart.aspx?PID=" + DataBinder.Eval(Container.DataItem, "ProductID").ToString() %>' 
        ImageUrl="~/CommonImagesFolder/buy_btn.gif" /> 
    
    +0

    这个工作,但也绕过它在服务器端工作以及!谢谢 – 2013-04-11 18:47:58

    相关问题