在当前上下文中不存在

在当前上下文中不存在

我在页面中收到以下错误:


  '名称'DataList1'在当前上下文中不存在'


这是我的代码:

listviewvideo.aspx.cs

private void BindGrid()
{
    string strConnString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
        using (SqlConnection con = new SqlConnection(strConnString))
        {
            using (SqlCommand cmd = new SqlCommand())
            {
                cmd.CommandText = "select Id, Name from uploadvideo";
                cmd.Connection = con;
                con.Open();
                DataList1.DataSource = cmd.ExecuteReader();
                DataList1.DataBind();
               con.Close();
            }
        }
    }


listviewvideo.aspx

<table>
<tr>
<td>
    <ASPNetFlashVideo:FlashVideo ID="FlashVideo1" runat="server" Height="500" Width="1050"></ASPNetFlashVideo:FlashVideo>
    <asp:FileUpload ID="FileUpload1" runat="server" CssClass="myButton" />
    <asp:Button ID="btnupload" runat="server" Text="Upload" OnClick="btnupload_Click" CssClass="myButton" />
    <hr />
    <asp:DataList ID="DataList1" Visible="true" runat="server" AutoGenerateColumns="false" RepeatColumns="2" CellSpacing="5">
    <ItemTemplate>
    <u>
    <%# Eval("Name") %>
    </u>
    <a class="player" style="height:300px; width:300px; display:block" href='<%# Eval("Id","FileCS.ashx?Id={0}") %>'></a>
    </ItemTemplate>
    </asp:DataList>
</td>
</tr>
</table>


我在页面中收到以下错误:


  '名称'DataList1'在当前上下文中不存在'

最佳答案

您可能会收到此错误。对此有3个解决方案



保存您的项目并关闭解决方案,同时也关闭IIS Express。并检查它是否有效。


尝试通过在添加listviewvideo.aspx.designer.cs项的Datalist页面中编写以下代码来添加数据列表。


检查@Page指令上文件名和Inherits属性后面的代码,确保它们都匹配。



您也可以在这里查看更清晰的图片

ID Does not exist in the current context



protected global::System.Web.UI.WebControls.DataList Datalist1;





希望这可以帮助。

10-07 21:48