我在列表中有一个计算字段,其中包含以下公式:
=CID & " - " & Title
查看列表时,它可能会显示为:“2 - Big Meeting”。当我从代码中获取值时如此:
myItem["CIDandTitle"]
值返回为:“string;#2 - BigMeeting”。在sharepoint中有一个“正确”的方法来提取值,还是应该简单地分割为分号和井号?
我正在使用MOSS2007。
答案 0 :(得分:15)
您必须将其强制转换为SPCalculatedField:
SPFieldCalculated cf = (SPFieldCalculated)myItem.Fields["CIDandTitle"];
string value = cf.GetFieldValueForEdit(myItem["CIDandTitle"]);
或
string value = cf.GetFieldValueAsText(myItem["CIDandTitle"]);
答案 1 :(得分:0)
@Nathan给出的答案并未指定您需要提供字段的显示名称。它不适用于internalName。此外,我可能会使用作为来投射结果。
var cf = list.Fields["calculatedfieldDisplayName"] as SPFieldCalculated;
String value = cf.GetFieldValueAsText(item["calculatedfieldDisplayName"]);