C# System.Linq.Dynamic.ParseException:'';或';(';预期-VS2012错误
我正在尝试运行以下代码:C# System.Linq.Dynamic.ParseException:'';或';(';预期-VS2012错误,c#,linq,linq-to-sql,C#,Linq,Linq To Sql,我正在尝试运行以下代码: [TestMethod] [TestCleanup] public void TestMethod3() { using (var context = new CorporateDWTestEntities1()) { //Deleting every row within the OLE_DB_Destination1 table. var query = from c in context.SR
[TestMethod]
[TestCleanup]
public void TestMethod3()
{
using (var context = new CorporateDWTestEntities1())
{
//Deleting every row within the OLE_DB_Destination1 table.
var query = from c in context.SRS_Ticket_Transaction_Stage select c;
query.Delete();
context.SaveChanges();
}
}
但是,当它运行时,我收到一条错误消息,指出:
“消息:测试方法集成\u服务\u Tests.UnitTest1.TestMethod3
引发异常:System.Linq.Dynamic.ParseException:“.”或“(”
预期测试清理方法
Integration_Services_Tests.UnitTest1.TestMethod3引发异常。
System.Linq.Dynamic.ParseException:
System.Linq.Dynamic.ParseException:“应为”“或”“。”
有人知道这意味着什么以及如何克服它吗?,您可能需要将所有记录加载到内存中,然后为每个项目调用context.SRS\u Ticket\u Transaction\u Stage.DeleteOnSubmit()
:
[TestMethod]
[TestCleanup]
public void TestMethod3()
{
using (var context = new CorporateDWTestEntities1())
{
//Deleting every row within the OLE_DB_Destination1 table.
var query = from c in context.SRS_Ticket_Transaction_Stage select c;
var records = query.ToList();
foreach(var record in records)
{
context.SRS_Ticket_Transaction_Stage.DeleteOnSubmit(record);
}
context.SubmitChanges();
}
}
我猜这可能是一个SQL语法问题。您能确定这个Linq语句生成的实际SQL select语句吗?