vs2005中<asp:Label ID="lblProductId" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "ProductId"); %>'></asp:Label>其中的 Text='<%# DataBinder.Eval(Container.DataItem, "ProductId"); %>' 的单引号换成双引号后,切换到设计试图就报错,是什么原因 ?

解决方案 »

  1.   

    绑定数据时,一般用单引号
    Text=' <%# DataBinder.Eval(Container.DataItem, "ProductId"); %>'
    如果将单引号改成双引号
    Text=" <%# DataBinder.Eval(Container.DataItem, "ProductId"); %>"
    你匹配一下,中间的ProductId不知为何物了,肯定报错
      

  2.   

    单的是字符,又引号为字符串  
    ----------------------------
    这个我知道! 问题是我现在是用Lable控件绑定数据 Text 应该用 双引号 才对啊!
      

  3.   

    如果外面用双引号,编译器就会认为下面这两个双引号是匹配的Text=" <%# DataBinder.Eval(Container.DataItem, "ProductId"); %>" 那么多出来的数据无法理解,当然编译出错由于数据绑定的语法是服务器端的语法,必须使用双引号,所以页面这里就只好用单引号了
      

  4.   

    语文没学好 
    Text=' <%# DataBinder.Eval(Container.DataItem, "ProductId"); %>'
    ''中有了双引号了不能再用双引号了 Text="<%# DataBinder.Eval(Container.DataItem, 'ProductId'); %>"
      

  5.   

    Text=" <%# DataBinder.Eval(Container.DataItem, 'ProductId'); %>"这个照
    ------------------------
    由于数据绑定的语法是服务器端的语法,必须使用双引号,所以页面这里就只好用单引号了
    ----------------------
    说,那就是错误的了 ?