2009-05-22 74 views
10

我有一個計算的字段在這個公式列表:
=CID & " - " & Title的SharePoint - 讓計算領域的價值,無需手動解析

查看列表時,它可能顯示爲:「2 - 大聚會」。當我從代碼中獲取值時,如下所示:
myItem["CIDandTitle"]

該值返回爲:「string;#2 - BigMeeting」。在共享點中是否存在「正確」的方式來提取值,或者我應該簡單地分割分號和英鎊符號?

我正在使用MOSS2007。

回答

13

你必須將其轉換爲SPCalculatedField:

SPFieldCalculated cf = (SPFieldCalculated)myItem.Fields["CIDandTitle"]; 
string value = cf.GetFieldValueForEdit(myItem["CIDandTitle"]); 

string value = cf.GetFieldValueAsText(myItem["CIDandTitle"]); 
+0

工作;就像cf.GetFieldValueAsText(myItem [「CIDandTitle」])一樣。這種方法雖然看起來很笨重。 – Chloraphil 2009-05-22 15:07:48

0

通過@Nathan給出不指定您需要提供字段的顯示名稱的答案。它不適用於internalName。此外,我很可能使用作爲來投射結果。

var cf = list.Fields["calculatedfieldDisplayName"] as SPFieldCalculated; 
String value = cf.GetFieldValueAsText(item["calculatedfieldDisplayName"]);