为什么使用linq或实体..不直接使用ado.net中的数据

时间:2018-11-15 17:13:33

标签: linq ado.net

为什么要使用linq或实体框架?为什么不直接使用ado.net中的数据,
例如从表中选择一些数据并直接在datagidview中显示?

示例:

con = new SqlConnection(cs.DBConn);
con.Open();
String sql = "SELECT ID,CategoryName from Category";
cmd = new SqlCommand(sql, con);
rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
dataGridViewX1.Rows.Clear();
while (rdr.Read() == true)
{
    dataGridViewX1.Rows.Add(rdr[0], rdr[1]);
}

为什么在现实世界的应用程序中无法像这样使用?

1 个答案:

答案 0 :(得分:0)

蒂姆是对的。没有什么可以阻止您使用ADO.Net。使用ORM有一些优点。从安全角度来看,一个主要优点是,具有某种where子句的ORM查询不易受到SQL注入的攻击,因为它们已转换为参数化查询。