无法将类型“System.Linq.IQueryable”隐式转换为“string”

camou_li 2013-04-23 01:48:58
var test =new string[] { from A in CATOS.TB_BERTHPLANS.Include("LOG_SHIP_MOVE") where (A.ATD >= startDate && A.ATD <= endDate) select new { yy = A.VSL_CD + A.CALL_YEAR + A.CALL_SEQ }};
//string[] test =string new[] { from A in CATOS.TB_BERTHPLANS where (A.ATD >= startDate && A.ATD <= endDate) select new { yy = A.VSL_CD + A.CALL_YEAR + A.CALL_SEQ } };

var sqljoin = from k in
(from t in
(CATOS.LOG_SHIP_MOVE.Where(t => PTNRs.Contains(t.PTNR_CODE) && (t.BMOVE_TYPE == "DE" || t.BMOVE_TYPE == "ES")
&&test.Contains(t.SHIP_LOG_NO)
))
group t by t.SHIP_LOG_NO into tt
select new
{
//SHIP_LOG_NO = tt.Select(m => m.SHIP_LOG_NO),
SHIP_LOG_NO = tt.Key,
DE_F = tt.Sum(m => m.BMOVE_TYPE + m.FE == "DEF" ? 1 : 0),
DE_E = tt.Sum(m => m.BMOVE_TYPE + m.FE == "DEE" ? 1 : 0),
ES_F = tt.Sum(n => n.BMOVE_TYPE + n.FE == "ESF" ? 1 : 0),
ES_E = tt.Sum(n => n.BMOVE_TYPE + n.FE == "ESE" ? 1 : 0),
RESTOW = tt.Sum(m => m.BMOVE_TYPE == "TB" ? 1 : (m.BMOVE_TYPE == "BT" ? 1 : (m.BMOVE_TYPE == "BB" ? 1 : 0)))
})
join f in
(from A in CATOS.TB_BERTHPLANS.Include("TB_VSL")
select new
{
yy = A.VSL_CD + A.CALL_YEAR + A.CALL_SEQ,
A.VSL_CD,
A.CALL_YEAR,
A.CALL_SEQ,
A.ATD,
A.IN_VOY,
A.OUT_VOY,
A.IN_LANE,
A.OUT_LANE,
A.TB_VSL.VSL_NM
}) on k.SHIP_LOG_NO equals f.yy
where (f.ATD >= startDate && f.ATD <= endDate)
orderby f.ATD
select new
{
f.VSL_NM,
VESSEL_VOYAGE = (f.IN_VOY == null ? null : f.IN_VOY) + "/" + (f.OUT_VOY == null ? null : f.OUT_VOY),
SERVICE_LANE = f.IN_LANE + "/" + f.OUT_LANE,
f.ATD,
k.SHIP_LOG_NO,
k.DE_F,
k.DE_E,
k.ES_F,
k.ES_E,
k.RESTOW
};
sqljoin = sqljoin.OrderBy(t => t.ATD);
return new AjaxStoreResult(sqljoin);
...全文
486 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
camou_li 2013-04-23
  • 打赏
  • 举报
回复
var test =(from A in CATOS.TB_BERTHPLANS.Include("LOG_SHIP_MOVE") where (A.ATD >= startDate && A.ATD <= endDate) select A.VSL_CD + A.CALL_YEAR + A.CALL_SEQ).ToArray(); 这个数据才正常了,非常感谢版主
EnForGrass 2013-04-23
  • 打赏
  • 举报
回复
引用 3 楼 lixipingke 的回复:
var test =(from A in CATOS.TB_BERTHPLANS.Include("LOG_SHIP_MOVE") where (A.ATD >= startDate && A.ATD <= endDate) select new { yy = A.VSL_CD + A.CALL_YEAR + A.CALL_SEQ }).Select(x……
select new 这种是IQueryable的匿名类型。要先转化为string
camou_li 2013-04-23
  • 打赏
  • 举报
回复
var test =(from A in CATOS.TB_BERTHPLANS.Include("LOG_SHIP_MOVE") where (A.ATD >= startDate && A.ATD <= endDate) select new { yy = A.VSL_CD + A.CALL_YEAR + A.CALL_SEQ }).Select(x => x.ToString()).ToArray(); 这个可以了,谢谢,这个主要是什么问题?
EnForGrass 2013-04-23
  • 打赏
  • 举报
回复
再试试这样 var test =(from A in CATOS.TB_BERTHPLANS.Include("LOG_SHIP_MOVE") where (A.ATD >= startDate && A.ATD <= endDate) select A.VSL_CD + A.CALL_YEAR + A.CALL_SEQ).ToArray();
EnForGrass 2013-04-23
  • 打赏
  • 举报
回复
var test =(from A in CATOS.TB_BERTHPLANS.Include("LOG_SHIP_MOVE") where (A.ATD >= startDate && A.ATD <= endDate) select new { yy = A.VSL_CD + A.CALL_YEAR + A.CALL_SEQ }).Select(x => x.ToString()).ToArray();

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧