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 Linq实现对数据库的操作
{
public partial class Form1 : Form
{
LinqtosqlClassDataContext linq;
string strCon = "Data Source=.;Initial Catalog=Student;Integrated Security=True"; public Form1()
{
InitializeComponent();
} #region 查询班级信息
///<summary>
///查询班级信息
///<summary>
///<param name="strKey">查询关键字</param>
private void BindInfo(string strKey)
{
linq = new LinqtosqlClassDataContext(strCon);
if (strKey == "")
{
//获取班级信息
var result = from info in linq.Class_Info
select new
{
班级编号 = info.class_No,
班级名称 = info.class_Name,
教授 = info.director,
专业 = info.profession
};
dataGridView1.DataSource = result;
}
else
{
switch (cboxCondition.Text)
{
case "班级编号":
//根据班级编号查询员工信息
var resultid = from info in linq.Class_Info
where info.class_No.ToString() == strKey
select new
{
班级编号 = info.class_No,
班级名称 = info.class_Name,
教授 = info.director,
专业 = info.profession
};
dataGridView1.DataSource = resultid;
break;
case "班级名称":
//根据班级编号查询员工信息
var resultname = from info in linq.Class_Info
where info.class_Name == strKey
select new
{
班级编号 = info.class_No,
班级名称 = info.class_Name,
教授 = info.director,
专业 = info.profession
};
dataGridView1.DataSource = resultname;
break;
case "教授":
//根据班级编号查询员工信息
var resultdirector = from info in linq.Class_Info
where info.director == strKey
select new
{
班级编号 = info.class_No,
班级名称 = info.class_Name,
教授 = info.director,
专业 = info.profession
};
dataGridView1.DataSource = resultdirector;
break;
}
}
} private void btnSelect_Click(object sender, EventArgs e)
{
BindInfo(txtkeyword.Text);
} private void btnAdd_Click(object sender, EventArgs e)
{
linq = new LinqtosqlClassDataContext(strCon);
Class_Info class1 = new Class_Info();
class1.class_No =Convert.ToInt32(txtclassno.Text);
class1.class_Name = txtclassname.Text;
class1.director = txtdirector.Text;
class1.profession = txtprofession.Text;
linq.Class_Info.InsertAllOnSubmit(class1);
linq.SubmitChanges();
MessageBox.Show("班级信息添加成功");
BindInfo("");
}
}
}
#endregion
显示错误
错误 1 无法从用法中推导出方法“System.Data.Linq.Table<Linq实现对数据库的操作.Class_Info>.InsertAllOnSubmit<TSubEntity>(System.Collections.Generic.IEnumerable<TSubEntity>)”的类型实参。请尝试显式指定类型实参。 E:\控制台应用程序\练习\Linq实现对数据库的操作\Linq实现对数据库的操作\Form1.cs 103 13 Linq实现对数据库的操作
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace Linq实现对数据库的操作
{
public partial class Form1 : Form
{
LinqtosqlClassDataContext linq;
string strCon = "Data Source=.;Initial Catalog=Student;Integrated Security=True"; public Form1()
{
InitializeComponent();
} #region 查询班级信息
///<summary>
///查询班级信息
///<summary>
///<param name="strKey">查询关键字</param>
private void BindInfo(string strKey)
{
linq = new LinqtosqlClassDataContext(strCon);
if (strKey == "")
{
//获取班级信息
var result = from info in linq.Class_Info
select new
{
班级编号 = info.class_No,
班级名称 = info.class_Name,
教授 = info.director,
专业 = info.profession
};
dataGridView1.DataSource = result;
}
else
{
switch (cboxCondition.Text)
{
case "班级编号":
//根据班级编号查询员工信息
var resultid = from info in linq.Class_Info
where info.class_No.ToString() == strKey
select new
{
班级编号 = info.class_No,
班级名称 = info.class_Name,
教授 = info.director,
专业 = info.profession
};
dataGridView1.DataSource = resultid;
break;
case "班级名称":
//根据班级编号查询员工信息
var resultname = from info in linq.Class_Info
where info.class_Name == strKey
select new
{
班级编号 = info.class_No,
班级名称 = info.class_Name,
教授 = info.director,
专业 = info.profession
};
dataGridView1.DataSource = resultname;
break;
case "教授":
//根据班级编号查询员工信息
var resultdirector = from info in linq.Class_Info
where info.director == strKey
select new
{
班级编号 = info.class_No,
班级名称 = info.class_Name,
教授 = info.director,
专业 = info.profession
};
dataGridView1.DataSource = resultdirector;
break;
}
}
} private void btnSelect_Click(object sender, EventArgs e)
{
BindInfo(txtkeyword.Text);
} private void btnAdd_Click(object sender, EventArgs e)
{
linq = new LinqtosqlClassDataContext(strCon);
Class_Info class1 = new Class_Info();
class1.class_No =Convert.ToInt32(txtclassno.Text);
class1.class_Name = txtclassname.Text;
class1.director = txtdirector.Text;
class1.profession = txtprofession.Text;
linq.Class_Info.InsertAllOnSubmit(class1);
linq.SubmitChanges();
MessageBox.Show("班级信息添加成功");
BindInfo("");
}
}
}
#endregion
显示错误
错误 1 无法从用法中推导出方法“System.Data.Linq.Table<Linq实现对数据库的操作.Class_Info>.InsertAllOnSubmit<TSubEntity>(System.Collections.Generic.IEnumerable<TSubEntity>)”的类型实参。请尝试显式指定类型实参。 E:\控制台应用程序\练习\Linq实现对数据库的操作\Linq实现对数据库的操作\Form1.cs 103 13 Linq实现对数据库的操作
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货