找不到 DataTable 命名空间

DataTable namespace can not be found

我在 C# ASPX 中工作,我正在尝试制作一个数据表,以便我可以使用 Datatable.compute()。我制作了 class,但我正计划更改其中的大部分内容。我曾多次尝试导入和制作数据表,但我的代码无法正常工作。我到处都看了,我不知道为什么这不起作用。

代码:

using System;
using System.Collections;
using System.Data.Datatable;

namespace Krypton
{

    public partial class Default : System.Web.UI.Page
    {
        DataTable dt = new DataTable();
        Random rand = new Random();

        int[] cards = new int[6];
        ArrayList openP = new ArrayList();
        ArrayList closeP = new ArrayList();
        ArrayList pairList = new ArrayList();
        ArrayList numbers = new ArrayList();
        ArrayList comands = new ArrayList();

        String answer;

        public void generateCards(object sender, EventArgs args)
        {
            for (int i = 0; i < cards.Length; i++)
            {
                cards[i] = (1 + rand.Next(24));
            }
            card1.Text = cards[0].ToString();
            card2.Text = cards[1].ToString();
            card3.Text = cards[2].ToString();
            card4.Text = cards[3].ToString();
            card5.Text = cards[4].ToString();
            card6.Text = cards[5].ToString();
        }

        public void checkCards(object sender, EventArgs ars)
        {
            answer = answerBox.Text;
            splitString(answer);
        }

        public void splitString(String s)
        {
            char[] c = s.ToCharArray();

            for (int i = 0; i < c.Length; i++)
            {
                if (c[i] == ')')
                {
                    closeP.Add(i);
                    Boolean end = true;
                    int j = i;
                    while (!end)
                    {
                        if (c[j] == '(')
                        {
                            openP.Add(j);
                            end = true;
                        }
                        else if (j <= 0)
                        {
                            end = true;
                        }
                        else {
                            j--;
                        }
                    }
                }
            }
            for (int i = 0; i < c.Length; i++)
            {
                char ch = c[i];
                if (ch == '+')
                    comands.Add(0);
                if (ch == '-')
                    comands.Add(1);
                if (ch == '*')
                    comands.Add(2);
                if (ch == '/')
                    comands.Add(3);
                if (ch == '^')
                    comands.Add(4);
            }
            for (int i = 0; i < c.Length; i++)
            {
                char ch = c[i];
                if (isNumber(ch)) {

                }
            }

            findPairs(openP, closeP);
            doMath(pairList);
        }

        public Boolean isNumber(char c) {
            if (c == '0' || c == '1' || c == '2' || c == '3' || c == '4' || c == '5' || c == '6' || c == '7' || c == '8' || c == '9')
            {
                return true;
            }
            else{
                return false;
            }
        }

        public void findPairs(ArrayList o, ArrayList c)
        {

            if (!(o.Count == c.Count))
            {
                return;
            }
            for (int i = 0; i < o.Count; i++)
            {
                NumberPair pr = new NumberPair((int)o[i], (int)c[i]);
                pairList.Add(pr);
            }
        }

        public void doMath(ArrayList a)
        {
            ArrayList strAry = new ArrayList();
            for (int i = 0; i < a.Count; i++)
            {
                NumberPair pr = (NumberPair)a[i];
                strAry.Add(answer.Substring(pr.getStart(), pr.getEnd()));
                answerBox.Text = (String)strAry[i];
            }
        }
    }
}

错误:

编辑:我将其从 system.data.database 更改为 system.data。它仍然不起作用:(

DataTable 是 System.Data 命名空间中的一个 class。尝试将您的使用更改为 System.Data:

using System.Data;

阿加洛在评论里帮我回答了这个问题,非常感谢。

您只需在参考文献中添加 System.Data: