C# 执行查询时未将对象引用设置为对象的实例
运行以下代码时出现错误:C# 执行查询时未将对象引用设置为对象的实例,c#,linq,linq-to-sql,C#,Linq,Linq To Sql,运行以下代码时出现错误: string SqlQuery = "Update " + frmmain.CityName + " set assignedtouserid='" + frmmain.UserName + "', flag=1 where flag=0 and city like '%" + newcituname + "%' "; LeptonDataLayer.ExecuteNoneQuery(1, SqlQuery); 这是我收到的错误: 对象引用未设置为对象的实例 如
string SqlQuery = "Update " + frmmain.CityName + " set assignedtouserid='" +
frmmain.UserName + "', flag=1 where flag=0 and city like '%" +
newcituname + "%' ";
LeptonDataLayer.ExecuteNoneQuery(1, SqlQuery);
这是我收到的错误:
对象引用未设置为对象的实例
如何解决此问题?
frmmain
或其中一个字段为空(未分配新的对象)或LeptonDataLayer
为空
您需要找出哪一个是空的(使用调试器来查找),然后确保它具有适当的值。或者根本不运行查询
另外,我必须指出,通常在代码中构建T-SQL
是一个坏主意,因为它使您非常容易受到SQL注入攻击。您应该调用存储过程并传入Sql参数。也可能重复:这很容易受到Sql注入攻击。在代码中构建T-Sql也可以。在这些查询中包含用户提供的数据是错误的。