2011-03-15 75 views
1

我有一个文档库,我保存文档(je)。 (Silverlight的太多,但这个问题已经解决)文档XML数据Sharepoint 2010 Silverlight

我想用2010的SharePoint对象模型从Silverlight应用程序来获得ID文档的XML数据= ...

首先我序列化类,并上传到文档库,然后我想它...

这XML必须包含一个物体的XMLSerializer反序列化...

我该怎么办呢?

+0

请提供你想要完成什么更多的信息。我想你说你想让Silverlight应用程序访问SharePoint文档库中的项目。它是否正确? – 2011-03-15 17:12:35

+0

如果文档库中的数据已经序列化,您将只能反序列化数据。请提供更多信息。 – 2011-03-15 17:15:54

+0

是的,首先我序列化一个类并上传到文档库,然后我想要得到它,那就是点,是@罗伯特·威廉姆斯 – Caipivara 2011-03-15 17:55:33

回答

0

我第一次做“文档库中下载一个文件”:

using (ClientContext ctx = new ClientContext("http://med02ws:47205/Documentos")) 
       { 
        Web web = ctx.Web; 

        List docs = web.Lists.GetByTitle(tipo); 

        DocumentoObtenidoSP = docs.GetItemById(id); 

        ctx.Load(DocumentoObtenidoSP); 
        ctx.ExecuteQueryAsync(OnCargarDocumentoSucceess, OnSharepointFailure); 
       } 

    private void OnCargarDocumentoSucceess(object sender, ClientRequestSucceededEventArgs e) 
{ 
       WebClient wc = new WebClient(); 
       wc.OpenReadCompleted += new OpenReadCompletedEventHandler(WebClient_OpenFileReadCompleted); 
       wc.OpenReadAsync(new Uri("http://med02ws:47205" + DocumentoObtenidoSP.FieldValues["FileRef"].ToString())); 
} 

private void WebClient_OpenFileReadCompleted(object sender, OpenReadCompletedEventArgs e) 
{ 
//In e.Result you got the stream to XML Deserialize using the XMLSerializer 
} 
1

首先你要获得与Silverlight客户端对象模型熟悉,这里有一个首发,但有相当多的人在那里:

http://praveenbattula.blogspot.com/2010/03/sharepoint-2010-silverlight-client.html

然后你就会想找到oout如何使用CAML查询列表,并使用结果集中的项目获取您所在图书馆中的文档。

然后您可能需要将内容(使用SPListItem.File.OpenBinaryStream())流式传输到某种类型的阅读器中,以便反序列化。

+0

我在silverlight所以SPListItem不可用:( – Caipivara 2011-03-15 21:42:14

+2

它将可用如果你使用Silverlight客户端对象模型来获取它。看看这个:http://www.dotnetthoughts.net/2010/11/04/how-to-access-sharepoint-list-items-using-silverlight-object -model /。我应该添加的对象是caledd“ListItem”而不是“SPListItem” - 这是SharePoint 2010中服务器和客户端对象模型之间的主要区别之一。 – 2011-03-15 22:15:30

1

下面是关于SharePoint客户端对象模型一套良好的信息:

http://msdn.microsoft.com/en-us/library/ee857094.aspx

下面是如何与客户端对象模型查询列表(例如文档库)一个具体的例子:

http://msdn.microsoft.com/en-us/library/ee857094.aspx#SP2010ClientOM_Using_CAML_Query_List

我真的很喜欢通过示例网站上的.NET这个例子:

http://dotnetbyexample.blogspot.com/2011/03/sharepoint-client-object-model-sites.html

我喜欢创建SharePointHelper类作为客户端对象模型的包装器的想法。它提供了许多例子,包括

+0

这是所有客户端对象模型并且没有任何abuot Silverlight - Silverlight的主要区别是(除了不同的引用代码库),您不能在Silverlight中使用客户端对象模型执行同步的ExecuteQuery调用。 – 2011-03-16 15:35:49

+0

@JamesLove - 我仅仅提供了我的答案和客户端对象模型的具体例子,因为在我看来,Daniel G. R.(问过这个问题)已经知道了他们围绕Silverlight的方式。这个问题似乎更多地依靠SharePoint客户端对象模型的方向。 – 2011-03-16 15:55:42

相关问题