通过C#插入MySQL

时间:2014-03-20 09:57:41

标签: c# mysql

我正在制作WPF C#个。我有一个DAO类,连接到我的数据库和Service类,还有一些从数据库获取信息的方法。它工作正常。但我也想插入数据库。那么,我的错误在哪里?我在Service类中使用该代码

public static DataTable createProject(string projectName, string depName, string empName, int estTime, DateTime startDate)
{
   string sql = "";
   sql += "INSERT INTO Projects (projectName, departmentName, employeeName, estimatedTime, startDate)";
   sql += "VALUES (" + projectName + depName + empName + estTime + startDate +")";

   return getDataTable(sql);
}

之后,我要去我的xaml.cs

private void btnCreateAdd_Click(object sender, RoutedEventArgs e)
{
   Service.createProject((string)txtProjName.Text, (string)cmbCreateDepartment.SelectedItem, (string)cmbCreateEmployees.SelectedItem, Int32.Parse(txtElapseTime.Text), (DateTime)Calendar.SelectedDate);
}

它在我的xaml.cs中给了我一些例外

  

无法将'System.Data.DataRowView'类型的对象强制转换为'System.String'。

2 个答案:

答案 0 :(得分:1)

查看cmbCreateDepartment.SelectedItemcmbCreateEmployees.SelectedItem属性的类型。它是System.Data.DataRowView而不是String!所以例外是逻辑。

答案 1 :(得分:0)

试试这个

private void btnCreateAdd_Click(object sender, RoutedEventArgs e)
{
Service.createProject((string)txtProjName.Text, ((ComboBoxItem)cmbCreateDepartment.SelectedItem).Content.ToString(), ((ComboBoxItem)cmbCreateEmployees.SelectedItem).Content.ToString(), Int32.Parse(txtElapseTime.Text), (DateTime)Calendar.SelectedDate);
}