2011-08-07 75 views
2

存在此錯誤,它會干擾我的Silverlight 2.0控件中的數據輸出。當用戶對於例如,選擇從SharePoint 2007列字段個人或集團用戶,輸出將顯示爲:SharePoint列值包含額外的#字符

  • 9;#Carol
  • string;#4/8/2011(列字段日期和時間

我該如何消除傳入的附加字符呢?
修補程序也沒有多大幫助。

回答

2

;#是SharePoint的數據分隔符。它與逗號分隔值(CSV)文件中的逗號相似。您需要手動解析數據:

string[] parsedData = data.Split(new string[] { ";#" }); 

Person or Group場的情況下,9是用戶的用戶ID。

+0

謝謝你的解釋先生您應該使用SPFieldUserValue。無論如何解決了這個問題:) – brainsfrying

0

原來,問題出在我的源代碼,只需將其修改爲以下內容:

return value.Substring(value.LastIndexOf(";#") + 2); 
0
+0

在Silverlight控件中使用MOSS2007,「Microsoft.SharePoint.dll」不可用,所以'SPFieldUserValue'也不可用。 –

+0

@凱爾:這是無效的。即使在Silverlight控件中,您也可以始終添加對Microsoft.SharePoint.dll的引用。什麼阻止你這樣做?如果Silverlight控件部署在SharePoint服務器中,則引用將始終有效 –