LINQ 创建查询,将 "From" 子句留空
LINQ creates query leaving "From" clause empty
我有一个包含以下代码的 mvc3 应用程序:
public static List<ApprovalDTO> ConvertToDTO(IQueryable<REGISTER> r2, GMIEntities db, User user)
{
List<ApprovalDTO> rta = new List<ApprovalDTO>();
r2= r2.Where(r => r.APPROVAL.STATE1.DESC_STATE == Constants.ON_HOLD);
String sql = ((System.Data.Objects.ObjectQuery)r2.OrderBy(o => o.ANALYSIS.ANALYSIS_DATE)).ToTraceString();
System.Diagnostics.Debug.WriteLine(sql); }
r2 是使用另一种方法构造的:
IQueryable<REGISTER> r2 = db.REGISTER;
r2 = r2.OrderByDescending(r => r.WEIGHING);
return r2;
因此,导致此查询:
SELECT
"Extent1".-SOME INFO-
FROM ( SELECT
-SOME INFO- FROM ORDER BY "ANALYSIS_DATE" ASC ) "MYSCHEMA"."REGISTER" ORDER BY "ANALYSIS_DATE" ASC ) "Extent1"
这显然会在执行查询时产生 "Invalid table name" 错误,因为 LINQ 没有为 extent1 填充 FROM 子句
可能是什么原因造成的?
由于某些原因,重新安装后Visual Studio问题解决了
我有一个包含以下代码的 mvc3 应用程序:
public static List<ApprovalDTO> ConvertToDTO(IQueryable<REGISTER> r2, GMIEntities db, User user)
{
List<ApprovalDTO> rta = new List<ApprovalDTO>();
r2= r2.Where(r => r.APPROVAL.STATE1.DESC_STATE == Constants.ON_HOLD);
String sql = ((System.Data.Objects.ObjectQuery)r2.OrderBy(o => o.ANALYSIS.ANALYSIS_DATE)).ToTraceString();
System.Diagnostics.Debug.WriteLine(sql); }
r2 是使用另一种方法构造的:
IQueryable<REGISTER> r2 = db.REGISTER;
r2 = r2.OrderByDescending(r => r.WEIGHING);
return r2;
因此,导致此查询:
SELECT
"Extent1".-SOME INFO-
FROM ( SELECT
-SOME INFO- FROM ORDER BY "ANALYSIS_DATE" ASC ) "MYSCHEMA"."REGISTER" ORDER BY "ANALYSIS_DATE" ASC ) "Extent1"
这显然会在执行查询时产生 "Invalid table name" 错误,因为 LINQ 没有为 extent1 填充 FROM 子句 可能是什么原因造成的?
由于某些原因,重新安装后Visual Studio问题解决了