Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# SharePoint列值包含额外的值;人物_C#_Sharepoint 2007 - Fatal编程技术网

C# SharePoint列值包含额外的值;人物

C# SharePoint列值包含额外的值;人物,c#,sharepoint-2007,C#,Sharepoint 2007,有一个bug干扰了Silverlight 2.0控件的数据输出。例如,当用户从SharePoint 2007列字段“人员”或“组”中选择用户时,输出将显示为: 9;卡罗尔 一串2011年4月8日列字段日期和时间 如何消除传入的其他字符? 修补程序也没有多大帮助。;是SharePoint的数据分隔符。它类似于逗号分隔值CSV文件中的逗号。您需要手动解析数据: string[] parsedData = data.Split(new string[] { ";#" }); 对于Person或Gro

有一个bug干扰了Silverlight 2.0控件的数据输出。例如,当用户从SharePoint 2007列字段“人员”或“组”中选择用户时,输出将显示为:

9;卡罗尔 一串2011年4月8日列字段日期和时间 如何消除传入的其他字符? 修补程序也没有多大帮助。

;是SharePoint的数据分隔符。它类似于逗号分隔值CSV文件中的逗号。您需要手动解析数据:

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

对于Person或Group字段,9是用户的用户ID。

结果表明问题出在我的源代码上,只需将其编辑为以下内容:

return value.Substring(value.LastIndexOf(";#") + 2);
您不应该使用分割函数。您应该使用SPFieldUserValue,如本文所示


谢谢您的解释,先生。无论如何已解决问题:在Silverlight控件中使用MOSS2007,Microsoft.SharePoint.dll不可用,因此SPFieldUserValue也不可用。@Kyle:这是无效的。即使在Silverlight控件中,也可以始终添加对Microsoft.SharePoint.dll的引用。是什么阻止你这么做的?如果在SharePoint server中部署silverlight控件,则引用将始终有效