Entity framework 如何在实体框架中使用createquery方法动态创建insert查询?

Entity framework 如何在实体框架中使用createquery方法动态创建insert查询?,entity-framework,entity,Entity Framework,Entity,我使用的是上面的示例代码,但是当我尝试执行它时,它说 查询语法错误,关键字into附近的查询语法有错误 System.Data.Objects.ObjectParameter[] opc=new System.Data.Objects.ObjectParameter[1]; //sample opc[0]=new System.Data.Objects.ObjectParameter("columnname","columnvaluetoinsert") string strQuery="in

我使用的是上面的示例代码,但是当我尝试执行它时,它说 查询语法错误,关键字into附近的查询语法有错误

System.Data.Objects.ObjectParameter[] opc=new System.Data.Objects.ObjectParameter[1];  //sample
opc[0]=new System.Data.Objects.ObjectParameter("columnname","columnvaluetoinsert")
string strQuery="insert into tablename(columnname)values(@columnname)";
var query1 = entities.CreateQuery<System.Data.Objects.DataClasses.EntityObject>(strQuery, opc);
query1.Execute(System.Data.Objects.MergeOption.NoTracking);
System.Data.Objects.ObjectParameter[]opc=new System.Data.Objects.ObjectParameter[1]//样品
opc[0]=新的System.Data.Objects.ObjectParameter(“columnname”、“columnvaluetoinsert”)
string strQuery=“插入tablename(columnname)值(@columnname)”;
var query1=entities.CreateQuery(strQuery,opc);
query1.Execute(System.Data.Objects.MergeOption.NoTracking);

四个多月后,现在我可以回答这个问题了

string tableName = "yourTableName";
string PrimaryColName = "PrimarykeyName";

using(Entities entities = new Entities) 
{ 
  string sQuery= " select value " + tableName + " from " + tableName + " as " + tableName; 
 sQuery += " where ";
 sQuery += tableName + ".PrimaryColName " = " + lngMasterId;

 System.Data.Objects.ObjectQuery query = new System.Data.Objects.ObjectQuery(sMasterTableName, entities); 
 //where entities is the object of your objectContext class :) 
 return query.First();//do whatever you want with the result 
}

此处
“value”
“select”
告诉以自定义匿名格式给出结果之后,很可能有一种更好的方法来执行插入,然后“动态”创建查询。你能提供更多关于你想做什么的细节吗?实际上我必须创建一个通用的方法,通过我可以在一些具有相似列名和数字的表中插入数据。