【发布时间】:2019-05-13 16:44:11
【问题描述】:
我是 **.NET** 和 SharePoint 的新手,在处理 SharePoint 2013 项目时遇到以下问题。
进入我的代码:
for (int i = 0; i < eitchettaCorrenteList.Items.Count; i++)
{
string valoreColonnaIniziativaInternalName = eitchettaCorrenteList.Fields[nomeColonna].InternalName;
string valore = eitchettaCorrenteList.Items[i][valoreColonnaIniziativaInternalName].ToString();
}
我正在迭代名为 etichettaCorrentList 的 SharePoint 列表,并为每一行检索特定字段的值。
它可以工作,但问题是这一行:
string valore = eitchettaCorrenteList.Items[i][valoreColonnaIniziativaInternalName].ToString();
返回一个奇怪的值,其中包含预期值(包含在我的列表中),前面有一个不属于所选字段值的代码,例如:string;#S01-INIZIATIVA EUROPA 1测试
这个字符串;是什么?为什么我要找回它?如何在所需信息之前正确删除或不获取此 string;?怎么了?我错过了什么?
【问题讨论】:
-
哪个数据类型是 eitchettaCorrenteList.Items[i][valoreColonnaIniziativaInternalName]?也许 ToString 函数也返回元数据信息
-
不要使用
ToString()。有许多种不同的字段类型,包括查找(同时存储 ID 和文本)、图片、多值文本字段和查找等。您编写代码的方式就是检索内部数据。 -
你能说出这个值是什么类型的字段吗?您可以在列表设置的 SharePoint 列表中看到它。每个字段类型都可以转换为特定于 SharePoint .NET 类。这些类有自己的方法来正确获取值。如果您将使用这个正确的类来获得价值,那么您的问题可能会得到解决。
-
它是一个简单连接 2 个文本字段的计算值。我该用什么方法?
-
String strPrice = priceField.GetFieldValueAsText(item["Retail_x0020_Price"])来源:docs.microsoft.com/en-us/previous-versions/office/developer/…
标签: c# .net sharepoint sharepoint-2013 sharepoint-list