我在下面发布的代码可以正常工作,完全符合我的预期。我的问题是我是否真正以正确的方式使用课程?它的结构应该不同吗?我主要担心的是数据表的创建以及我在方法中向其添加列的事实。
我曾想过为数据表结构创建一个不同的类,但由于我构建的所有表都有不同的列名,列数,我觉得这没有意义。
我打算用这个方法做的是为LINQ sql查询创建类。每个类都将包含其唯一的linq代码,并且所有类将返回的唯一内容是数据表。然后这些表通过我的错误检查和比较过程。但这不是这个问题的一部分。
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
namespace classquery {
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//Define InputString
string[] input = { "John", "Mac", "Yes", "No" };
//Instantiate Class
DataTable Player = new DataTable();
Player one = new Player();
one.Main();
one.buildtable(input);
Player = one.retsetOne;
//Pass result to DataGridView
dataGridViewresult.DataSource = Player;
}
}
public class Player
{
//Define Datatable
private DataTable playerTable = new DataTable();
//Add DataRow to DataTable
public void buildtable(string[] strings)
{
DataRow row = playerTable.NewRow();
row["Name"] = strings[0];
row["Surname"] = strings[1];
row["Singles"] = strings[2];
row["Doubles"] = strings[3];
playerTable.Rows.Add(row);
}
//Return DataTable to Main Function
public DataTable retsetOne
{
get { return playerTable; }
}
//Build DataTable Columns?
public void Main()
{
playerTable.Columns.Add("Name");
playerTable.Columns.Add("Surname");
playerTable.Columns.Add("Singles");
playerTable.Columns.Add("Doubles");
}
} }