- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想将多个文档(文件)上传到一个 Sharepoint 文件夹中。在“ItemAdded”事件期间,我想“复制”父文件夹的 FIELDS(SPListItem) 到当前(上传的)项目。
当我检查当前项目的 FIELDS 时,它们都是已经在那了。
但是我如何才能将每个 FIELD VALUE 从文件夹项复制到上传项目?
我不知道如何从“ItemSource”中读出字段的值
SPList currentList = properties.List;
SPDocumentLibrary oDocumentLibrary = (SPDocumentLibrary)currentList;
SPListItemCollection collListItems = oDocumentLibrary.Items;
int AnzahlItems = collListItems.Count;
SPFieldCollection currentListFieldItems = currentList.Fields;
int AnzahlFields = currentListFieldItems.Count;
// ---------------------------------
// Get the current Item in the List
// ---------------------------------
SPListItem currentItem = currentList.Items[AnzahlItems - 1];
SPFieldCollection currentItemFields = currentItem.Fields;
int currentItemFieldsAnzahl = currentItemFields.Count;
// -----------------------------------------------------------
// For every FIELD from Source Item ADD FIELD to Target Item
// -----------------------------------------------------------
for (int i = 0; i < AnzahlFields; i++)
{
SPField NeuesFeld = currentListFieldItems[i];
String FeldInternalName = currentListFieldItems[i].InternalName;
String FeldName = currentListFieldItems[i].Title;
NeuesFeld.Type = currentListFieldItems[i].Type;
NeuesFeld.Required = currentListFieldItems[i].Required;
NeuesFeld.ShowInEditForm = true;
NeuesFeld.ShowInDisplayForm = true;
NeuesFeld.ShowInListSettings = true;
NeuesFeld.ShowInNewForm = true;
NeuesFeld.ShowInViewForms = true;
// ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
// Folder Item 1 --> Felder anhängen ::::::::::::::::::::::::::::
// ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
if (currentItem.Fields.ContainsField(FeldInternalName))
{
// The FIELD is already existing at the Target Item
}
else
{
// The FIELD is not existing at Target Item, will be added
currentItem.Fields.Add(NeuesFeld);
}
} // end for
// ----------------------------
// Save Changes at Item
// ----------------------------
currentItem.Update();
上面的代码不起作用,它总是给出消息“字段已经存在”我怎样才能读出 FIELD 的值??我很沮丧,没有办法读出 FIELD 的值??请帮助...
史蒂芬
最佳答案
这是一个有用的案例,我总是尝试从 Get And Set Value By Field Internal Name 获取来源
void UpdateSPListItem(SPListItem item, Model pageItem)
{
SetValueInternalName(item, "ArticleByLine", pageItem.ArticleByLine);
SetValueInternalName(item, "Comments", pageItem.Comments);
}
void SetValueInternalName(SPListItem item, string fieldInternalName, string value)
{
SPField field = item.Fields.GetFieldByInternalName(fieldInternalName);
item[field.Id] = value;
}
关于c# sharepoint 如何使用其他 SPListItem 的 FIELD 值设置 SPListItem 的 FIELD 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19136664/
我想将多个文档(文件)上传到一个 Sharepoint 文件夹中。在“ItemAdded”事件期间,我想“复制”父文件夹的 FIELDS(SPListItem) 到当前(上传的)项目。 当我检查当前项
(1) var list1 = web.GetList("/lists/list1"); (2) var item1 = list1.GetItemById(10001); (3) ... 在此处设置
我正在尝试将 SPListItem(带文件)从一个网站集复制到另一个网站集。我通过创建这样的文件来做到这一点: var archiveFile = newsArchive.Lists[listName
我正在尝试迭代 SPListItem.Versions 集合以查找最新批准的列表项。 我的列表项有三个版本:前两个已批准,最后一个处于草稿状态。但我的代码说它们都在草稿中!请帮忙! // Iterat
我有以下 C# 代码: using (SPSite site = new SPSite("http://mysharepointsiteurl") { using (SPWeb web = s
在 SharePoint 中,您如何 checkin SPListItem? 最佳答案 参见 MSDN:SPListItem.File . CheckIn() ; 例如: SPFile file =
我正在为人们在我们公司网站上执行任务制作一个 list 。我现在正在开发的功能是,一旦他们完成一项任务并将其标记为已完成,我希望我们的 sharepoint webpart 向他们发送一封电子邮件,其
我有一个可以包含 CustomContentType 的自定义列表。这就是我创建新项目的方式: //Create root folder SPListItem rootItem = navigatio
我需要获取 SplistItem.Item 的值。添加了一个新属性“ShortenedUrl”。问题是,旧页面不包含此属性,因此只要网站是旧页面,我就会收到“值不在预期范围内”的错误。 有没有办法先检
有谁知道如何将这些字符串十六进制值转换回 DateTime 值? 属性 my_DateProperty (System.String) = 0x01c9874e|0x98f28800 //l_item
我需要一个即使在库中打开版本控制时也是唯一的值。我应该调用其他属性吗? 最佳答案 spListItem 类有一个版本对象,其中包含该对象的所有版本。每个SPListItemVersion具有 Vers
当我尝试检索作为超链接的列时,我得到两个以逗号分隔的项目,而不是一个。 当我拉动item["ColumnName"]时,我得到它的值: http://www.google.com/article/58
我在 SharePoint 2007 中有表单库。我创建了一个自定义工作流事件,可以将 InfoPath 文档转换为 PDF。但是,当我尝试将原始 InfoPath 文件替换为新的 PDF 文件时,它
我正在尝试一些非常简单的事情 - 访问我的 SharePoint 列表的项目及其属性。 但是,对于所有普通列表,SPListItem.Properties 计数为零。对于文档和页面库,一切都按预期工作
这是我的代码,但我不知道哪个是 url 字段。我可以用不同的方式获取网址吗? var f = ""+ ''+ ''+
我正在尝试从唯一 ID (GUID) 获取 SPListItem 对象。通过查看多个站点(包括 http://sharepoint400.blogspot.com/2011/04/using-spsi
我想知道我是否遗漏了什么。 这是我将如何做到的: 对于 SPFolder,我会更改关联项目的权限 (SPFolder.Item)。 所以我想管理 SPFolder 权限归结为管理 SPListItem
我正在尝试确定要在 MOSS 列表中创建的下一个列表项的 ID。有什么办法吗? 谢谢,MagicAndi 最佳答案 以下 CAML 查询将确定接下来最有可能生成的 ID: int iNextID =
我有一个启用了版本控制的 SharePoint 2013 列表。我需要通过 REST 获取 SPListItem 版本列表。我可以通过该请求获取 SPListItem:http://spbreport
SPListItem.GetFormattedValue 似乎对 DateTime 字段有一个奇怪的行为。 它通过 SPListItem 的索引器检索 DateTime 值,根据此 MSDN arti
我是一名优秀的程序员,十分优秀!