【发布时间】:2010-11-15 16:02:47
【问题描述】:
我不确定这在 LINQ 中是否可行,但我有以下情况:
我通过多个查询多次调用 SharePoint 列表服务。然后,我从所有查询中填充单个对象及其属性。我正在使用 LINQ 来查询返回的 XElement。我知道,如果调用达到这一点,我的 LINQ 查询将只返回一个项目。我目前必须查询一个新对象,然后为每个 Web 服务调用从这个新对象(来自 LINQ)设置我的主对象的属性。 (以下代码示例仅包含需要查询和设置的“Action”项属性的一小部分。)
有什么方法可以将下面的语句“选择”到我现有的“动作”对象中?
var item = (from listItem in result.GetSPListItems()
select new ContractAction
{
Title = listItem.GetSPFieldValue("Title"),
Description = listItem.GetSPFieldValue("Description"),
DeliveryOrderID = SPHelper.GetFirstLookupID(listItem.GetSPFieldValue("Delivery Order")),
EstimatedValue = ((listItem.GetSPFieldValue("Estimated Value") as double?) ?? 0),
AgreementTypeID = SPHelper.GetFirstLookupID(listItem.GetSPFieldValue("Contract Type")),
}).FirstOrDefault();
contractAction.Title = item.Title;
contractAction.Description = item.Description;
contractAction.DeliveryOrderID = item.DeliveryOrderID;
contractAction.EstimatedValue = item.EstimatedValue;
contractAction.AgreementTypeID = item.AgreementTypeID;
【问题讨论】:
标签: c# linq sharepoint