C# 如何比较Sharepoint列表项的值?
亲爱的各位 我的列表包含日期/时间项,我希望获得日期的最大值。例如,2012年5月1日是今天最近的一天?如何将这些值与C进行比较并获得最新的值?我访问了代码中的列表和项目C# 如何比较Sharepoint列表项的值?,c#,sharepoint,sharepoint-2010,sharepoint-2007,C#,Sharepoint,Sharepoint 2010,Sharepoint 2007,亲爱的各位 我的列表包含日期/时间项,我希望获得日期的最大值。例如,2012年5月1日是今天最近的一天?如何将这些值与C进行比较并获得最新的值?我访问了代码中的列表和项目 using (SPWeb web = SPContext.Current.Site.RootWeb) { SPList alertList = web.Lists["Alert Status"]; if (alertList != null) { foreach (SPL
using (SPWeb web = SPContext.Current.Site.RootWeb)
{
SPList alertList = web.Lists["Alert Status"];
if (alertList != null)
{
foreach (SPListItem alertItem in alertList.Items)
{
DateTime startDate = (DateTime)alertItem["Alert Date"];
}
}
}
如果您像这样收集日期:
List<DateTime> dates;
using (SPWeb web = SPContext.Current.Site.RootWeb)
{
SPList alertList = web.Lists["Alert Status"];
if (alertList != null)
{
dates = alertList.Items.Select(alertItem => (DateTime)alertItem["Alert Date"]).ToList();
}
}
这将为您提供最新的绝对日期:
dates.OrderByDowningDate=>date.First
这将为您提供最接近现在的日期:
dates.OrderBydate=>Math.Absdate-DateTime.Now.totalmillizes.First 如果您像这样收集日期:
List<DateTime> dates;
using (SPWeb web = SPContext.Current.Site.RootWeb)
{
SPList alertList = web.Lists["Alert Status"];
if (alertList != null)
{
dates = alertList.Items.Select(alertItem => (DateTime)alertItem["Alert Date"]).ToList();
}
}
这将为您提供最新的绝对日期:
dates.OrderByDowningDate=>date.First
这将为您提供最接近现在的日期:
dates.OrderBydate=>Math.Absdate-DateTime.Now.totalmillizes.First 我建议使用。您可以使用: 如果列表中有很多项,那么SPList.items会非常慢,因为所有项都是从数据库中提取的 更新: 您不应处置SPContext.Current.Site.RootWeb。以后可能会被其他代码引用。使用“仅处置您自己打开的对象”规则作为准则。
有关更多信息,请参阅。我建议使用。您可以使用: 如果列表中有很多项,那么SPList.items会非常慢,因为所有项都是从数据库中提取的 更新: 您不应处置SPContext.Current.Site.RootWeb。以后可能会被其他代码引用。使用“仅处置您自己打开的对象”规则作为准则。
有关更多信息,请参阅。您想获取最近的日期还是从今天开始的最近日期(包括过去的日期)?我想获取从今天开始的最近日期。谢谢,您想获取最近的日期还是从今天开始的最近日期,包括过去的日期?我想获取从今天开始的最近日期。感谢+1解释处理SPWeb对象的正确方法。如果您建议LINQ to SharePoint进行操作,那么您的答案会更好。我想不起再写CAML字符串:-+1来解释处理SPWeb对象的正确方法了。如果您建议LINQ to SharePoint进行操作,您的答案会更好。我想不起再写CAML字符串了:-