我有一个SQL存储过程,其使用由最新的回复日期的顺序ISNULL通过子句订单项目,或者如果为空,由过帐日期:

实施例: ORDER BY ISNULL(rtb.LatestReplyDate,CB_TOPIC_DATE_POSTED)DESC

我试图得到这工作的LinqDataSource的排序依据子句中,无济于事尚未: 例:             

我知道ISNULL是无效的,但我还没有搞清楚如果有什么什么工作。我试过?运营商也是如此。任何想法?

有帮助吗?

解决方案

选中此linq..err ...链接

- 附录

OrderBy(p => p.<YourCompareVariant> == null ? p.<IfNull> :  p.<IfNotNull>); 

在你的情况:

OrderBy(p => p.LatestReplyDate == null ? p.LatestReplyDate : p.TopicDatePosted); 

其他提示

@Xencor,这里是什么工作:

<asp:LinqDataSource OrderBy="(CB_DATE_LATEST_REPLY != null ? CB_DATE_LATEST_REPLY : CB_TOPIC_DATE_POSTED) desc" Select="new (CB_TOPIC_ID, CB_TOPIC_CAT_ID, CB_TOPIC_TITLE, CB_TOPIC_DATE_POSTED, CB_TOPIC_REPLY_COUNT, CB_DATE_LATEST_REPLY, LU_CB_CATEGORy, VIEW_ALL_USER)" TableName="CB_TOPICs" > </asp:LinqDataSource> 

这是显而易见的,我不知道我是如何设法错过。这就是生活。感谢您指出我在正确的方向。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top