我从mysqldatabase中获取数据并在C#应用程序中输入变量。我正在使用此代码:
int forcatime;
string comandomedia = "select avg(forca_jogador) from jogadores where nome_time = " + time;
ocon.ConnectionString = con;
MySqlCommand media = new MySqlCommand(comandomedia, ocon);
ocon.Open();
forcatime = Convert.ToInt32(media.ExecuteScalar());
ocon.Close();
执行此操作后,我将“forcatime”转换为ToString并将其放入MessageBox中。
我想知道是否有办法为此操作创建一个类,因为每次我必须这样做时,我会一次又一次地编写所有代码。感谢
答案 0 :(得分:1)
像...一样的东西。
int result = new DataLayerHelper().RunQuery();
MessageBox.Show(result.ToString());
[...]
public class DataLayerHelper
{
public DataLayerHelper() { }
public int RunQuery()
{
int forcatime;
string comandomedia = "select avg(forca_jogador) from jogadores where nome_time = " + time;
ocon.ConnectionString = con;
MySqlCommand media = new MySqlCommand(comandomedia, ocon);
ocon.Open();//consider a using statement
forcatime = Convert.ToInt32(media.ExecuteScalar());
ocon.Close();
return forcatime;
}
}
答案 1 :(得分:0)
你没有为此写一个类,你为此编写了一个函数。
public void Foo(params)
{
//your code here
}
你要做的是把它放在一个“实用程序”类中,该类由带有私有构造函数的静态函数组成。
示例:
public class DBUtilities
{
private DBUtilities(){}
public static void Foo(params)
{
int forcatime;
string comandomedia = "select avg(forca_jogador) from jogadores where nome_time = " + time;
ocon.ConnectionString = con;
MySqlCommand media = new MySqlCommand(comandomedia, ocon);
ocon.Open();
forcatime = Convert.ToInt32(media.ExecuteScalar());
ocon.Close();
}
}
答案 2 :(得分:0)
应该使用他们打算封装的逻辑来创建类。
你需要说出这是为什么你把它扔到屏幕上......等等。
另外,根据时间的来源,您的代码中可能会有SQL注入。
P.S。我不能打字快,因为有些人对不起,如果这没有意义。