c#中mysql_fetch_assoc的等效命令是什么?
我非常习惯于php的mysql_fetch_assoc命令在OOP之前获取一行,从而使之前的查询不受欢迎。我现在在一个C#项目上工作,试图学习土地的法律。我可以完成如下基本查询并得到结果……但我想知道是否有更简单的方法?请注意,单击按钮时会发生这种情况c#中mysql_fetch_assoc的等效命令是什么?,c#,php,mysql,C#,Php,Mysql,我非常习惯于php的mysql_fetch_assoc命令在OOP之前获取一行,从而使之前的查询不受欢迎。我现在在一个C#项目上工作,试图学习土地的法律。我可以完成如下基本查询并得到结果……但我想知道是否有更简单的方法?请注意,单击按钮时会发生这种情况 private void button1_Click(object sender, EventArgs e) { string user; string userName = Environment.Use
private void button1_Click(object sender, EventArgs e)
{
string user;
string userName = Environment.UserName;
MySqlConnection conn = Connect.Initialize();
conn.Open();
string stm = "SELECT user_id from users where login = '" + userName + "'";
MySqlCommand cmd = new MySqlCommand(stm, conn);
try
{
MySqlDataReader sqlReader = cmd.ExecuteReader();
while (sqlReader.Read())
{
user = sqlReader.GetString(0);
System.Windows.Forms.MessageBox.Show(user);
}
}
catch { }
}
}
由于PHP中的术语“数组”与C风格语言中的数组有所不同,即,以字符串作为键的键值集合不是数组,
没有获取关联。
(至少我非常确定MySqlDataReader的bultin方法中没有一个
没有类似的内置类可以生成映射) 如果你的代码有效,为什么不使用它?
将其放入一个返回字典集合的方法中
或者类似的,如果你更喜欢这个 编辑:不要写空的捕获。
DB连接在一百万年内会出现不止一次的错误
编辑2:如果你不再需要它,请再次关闭连接等。据我所知,大多数C项目都使用MVC模型。有一些“业务对象”为您进行查询,在“视图”代码中,您所做的只是调用业务对象的函数。安装起来比较费时,但如果是一个相当大的项目,从长远来看是值得的