显示数据表格:& # 39;对象# 39;不包含的定义

本文关键字:包含 定义 对象 数据 显示 数据表 表格 | 更新日期: 2023-09-27 18:11:58

我有两个错误消息与我的c# webform,我不能自己处理。

Add。aspx:

 <%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Add.aspx.cs" Inherits="keszlet_management.Add" %>
    <asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
        <p>
            <br />
        </p>
        <p>
            <asp:GridView ID="GridView1" runat="server"></asp:GridView>
        </p>
    </asp:Content>

Add.aspx.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using MySql.Data.MySqlClient;
public partial class _Default : System.Web.UI.Page
{
    public object GridView1 { get; private set; }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
            using (MySqlConnection con = new MySqlConnection(constr))
            {
                using (MySqlCommand cmd = new MySqlCommand("SELECT * FROM items"))
                {
                    using (MySqlDataAdapter sda = new MySqlDataAdapter())
                    {
                        cmd.Connection = con;
                        sda.SelectCommand = cmd;
                        using (DataTable dt = new DataTable())
                        {
                            sda.Fill(dt);
                            GridView1.DataSource = dt;
                            GridView1.DataBind();
                        }
                    }
                }
            }
        }
}

我是c#的新手,所以我知道我有几个错误,请关注错误信息:1.:项目文件行抑制状态错误CS1061 'object'不包含'DataSource'的定义,并且无法找到接受'object'类型的第一个参数的扩展方法'DataSource'(您是否缺少using指令或程序集引用?)
2.:与'DataBind'相同的消息

显示数据表格:& # 39;对象# 39;不包含的定义

问题是您已将GridView声明为

public object GridView1 { get; private set; }

它是一个GridView,所以不要将它声明为对象,否则你不能使用GridView的属性或方法,只能使用System.Object,或者你必须将它强制转换为GridView

由于这是aspx文件的代码隐藏文件,因此您根本不需要声明它。它将在具有相同名称并以.designer.cs结尾的部分类中自动生成。

这一行:public object GridView1 { get; private set; }。它不应该声明为GridView而不是object吗?在这里查看示例用法:https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.gridview(v=vs.110).aspx