[英]C#; EF database first mode
我在 EF 中使用了数据库优先模式。 我需要您的帮助,因为我在尝试运行此代码时遇到了问题:
private void btnSearch_Click(object sender, EventArgs e)
{
string SNumber = txtSearchByNum.Text;
var qSearchByTypeText = database.tblNote.SqlQuery("select * From tblNote Where fNumber=@t0", SNumber).ToList();
}
我收到此错误:
System.Data.Entity.dll 中发生“System.Data.SqlClient.SqlException”类型的未处理异常
附加信息:必须声明标量变量“@t0”。
这可能是由于 ٍEntity Framework 版本造成的吗?
您需要传递如下参数:
var qSearchByTypeText = database.tblNote.SqlQuery("select * From tblNote Where fNumber=@t0", new SqlParameter("@t0", SNumber)).ToList();
如果您要求使用 EF6.0“使用”语句来包含创建并返回行列表的 EF/ORM 查询,我会这样做:
var qSearchByTypeText = new List<Note>(); //where "Note" is a data structure that looks like a row of columns in "tblNote".
using (var myDbEntity = new [your 'Database First' Entity name]())
{
//then your query
qSearchByTypeText = (from n in myDBEntity.tblNotes where n.fNumber == SNumber select n).ToList();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.