Silverlight托管客户端模型,是SharePoint2010推出的三种客户端模型“.NET托管”、“ECMAScript”、“Sliverlight”的一种,自己对于Silverlight也不是很熟悉,这也是第一次尝试Sliverlight,不过,我们主要尝试的是客户端模型调用SharePoint,而非Silverlight的功能。

  首先,我们打开vs2010新建项目,选择silverlight – Silverlight application,选择.Net 3.5框架,输入我们的项目名称确定即可,弹出silverlight新建向导,这个我们不需要改什么设置,确定就可以了。然后,我们在Silverlight中添加对客户端模型支持的引用,位置在:TEMPLATE\LAYOUTS\ClientBin下的两个dll文件

  Microsoft.SharePoint.Client.Silverlight.dll

  Microsoft.SharePoint.Client.Silverlight.Runtime.dll

  添加完引用,我们就可以编写我们的Silverlight程序了,我的例子就是通过Silverlight的客户端模型读取一个列表中的项目,然后显示到Silverlight的web部件中,试过了SharePoint2010推出的3中客户端对象模型,觉得使用差不多,一样是读取web,然后读取列表,读取列表项然后显示出来,同时,也需要先通过Load预读一下数据,然后再ExecuteQueryAsync才进行数据请求。而且,Silverlight的执行方式,是异步的。

  相比SharePoint2007,新版本的2010对Silverlight的支持有了很大改善,我们将编译后的Silverlight程序,也就是debug里面的.xap文件上传到文档库中,然后添加Silverlight的Web部件,输入Silverlight文件的链接,就可以添加到SharePoint中了,如下图就是我的示例的展现效果。后面还有代码供大家参考,初次使用Silverlight,不足之处,欢迎大家指正。

  

  Web web;

  List list;

  ListItemCollection listC;

  private void button1_Click(object sender, RoutedEventArgs e)

  {

  ClientContext context = new ClientContext(ApplicationContext.Current.Url);

  web = context.Web;

  list = web.Lists.GetByTitle("MyFirstLists");

  CamlQuery query = new CamlQuery();

  query.ViewXml = "";

  listC = list.GetItems(query);

  context.Load(listC);

  context.ExecuteQueryAsync(new ClientRequestSucceededEventHandler(OnSuccessed),new     

  ClientRequestFailedEventHandler(OnFailed));

  }

  private void OnSuccessed(Object sender, ClientRequestSucceededEventArgs args)

  {

  this.Dispatcher.BeginInvoke(LoadData);

  }

  private void LoadData()

  {

  String str = "";

  foreach (ListItem item2 in listC)

  {

  str += item2["Title"].ToString() + "\r\n";

  }

  label1.Content = str;

  }

  private void OnFailed(Object sender, ClientRequestFailedEventArgs args)

  {

  this.Dispatcher.BeginInvoke(delegate(){MessageBox.Show("Failed");});

  }

  参考链接:

  使用 Silverlight 客户端对象模型访问 SharePoint 2010 数据

  http://msdn.microsoft.com/zh-cn/library/gg595639.aspx

  作者:霖雨

  出处:http://www.cnblogs.com/jianyus

  本文版权归 霖雨和博客园共有,欢迎转载,但请注明出处。

SharePoint 2010 -- Silverlight托管客户端模型简单示例的更多相关文章

  1. SharePoint 2010 -- .Net托管客户端模型简单示例

    .Net托管客户端模型,是SharePoint2010推出的三种客户端模型".NET托管"."ECMAScript"."Sliverlight&quo ...

  2. SharePoint2010 -- ECMAScript客户端模型简单示例

    ECMAScript客户端模型,是SharePoint2010推出的三种客户端模型".NET托管"."ECMAScript"."Sliverlight ...

  3. UDP通讯模型简单示例

    1. UDP通讯模型 2. 服务器端 ① 创建一个socket,用函数socket() ② 绑定IP地址.端口等信息到socket上,用函数bind() ③ 循环接收数据,用函数recvfrom() ...

  4. TCP通讯模型简单示例

    1. TCP通讯模型 2. 服务器端 ① 创建socket,用函数socket() ② 绑定IP地址.端口号等信息到socket上,用函数bind() ③ 设置允许的最大连接数,用函数listen() ...

  5. thrift服务端到客户端开发简单示例

    (1)首先我们在服务器端写个helloworld.thrift文件,如下所示: service HelloWorld{ string ping(1: string name), string getp ...

  6. WCF:为 SharePoint 2010 Business Connectivity Services 构建 WCF Web 服务(第 1 部分,共 4 部分)

    转:http://msdn.microsoft.com/zh-cn/library/gg318615.aspx 摘要:通过此系列文章(共四部分)了解如何在 Microsoft SharePoint F ...

  7. SharePoint 2010 Pop-Up Dialogs SharePoint 2010 弹出对话框

    SharePoint 2010 Pop-Up Dialogs SharePoint 2010 弹出对话框         SharePoint 2010 使得往你的站点加入对话框内容变得出乎意料的简单 ...

  8. sharepoint 2010自定义访问日志列表设置移动终端否和客户端访问系统等计算列的公式

    上个月本人开发和上线了一个在SharePoint 2010上基于HTML5的移动OA网站,后端服务采用自定义的基于AgilePoint工作流引擎的Sharepoint Web服务,前端主要采用Jque ...

  9. SharePoint 2010 网站备份还原简单介绍

    今天尝试了SharePoint2010网站的备份和还原,从网上搜一些文档看看,然后自己试试,感觉和2007的操作没什么太大的区别,跟大家分享下自己尝试的命令行方式和数据库的方式,2007自己常用的也是 ...

随机推荐

  1. Java基本语法-----java二维数组

    由于word里的样式在csdn上调太麻烦了,所以我再次贴图了,后面二维数组那里是文字的,大家将就看吧. 二维数组常见的操作: 1.遍历二维数组 2.对二维数组求和 class Demo { // 定义 ...

  2. #VSTS日志# Xamarin构建支持和一大波更新

    距离上次更新#VSTS日志#已经有将近3个月的时间了,赶上最近Xamarin开源免费的消息,VSTS也推出了更多跨平台的支持和许多其他功能.这里列出一些小编觉得比较重要. 1. Xamarin 构建模 ...

  3. 【美工设计 - Adobe Illustrator】基本设置 (图像显示 | 图像缩放 | 置入导出 | 标尺 | 网格 | 参考线 | 画板)

    作者 : 韩曙亮 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50232767 一. 基础操作 1. 设置图像显示效果 (1) ...

  4. linux下字节对齐

    一,内存地址对齐的概念    计算机内存中排列.访问数据的一种方式,包含基本数据对齐和结构体数据对齐.    32位系统中,数据总线宽度为32,每次能够读取4字节数据.地址总线为32,最大寻址空间为4 ...

  5. 最简单的基于DirectShow的示例:视频播放器图形界面版

    ===================================================== 最简单的基于DirectShow的示例文章列表: 最简单的基于DirectShow的示例:视 ...

  6. 最简单的视频编码器:基于libvpx(编码YUV为VP8)

    ===================================================== 最简单的视频编码器系列文章列表: 最简单的视频编码器:编译 最简单的视频编码器:基于libx ...

  7. HTML超链接之伪类注意事项

    今天在复习html相关知识的时候发现了一个很常用,却经常被人们所忽略的知识点.那就是超链接伪类的使用.下面我就直接用代码来说明这一切. 伪类的相关代码 <!DOCTYPE html> &l ...

  8. Ubuntu14.04安装配置星际译王词典

    参考自:http://m.blog.csdn.net/blog/u014731529/25917149 平常总会遇到一些不认识的单词,汉字等等.一直使用Chrome 浏览器的翻译插件,不过插件的翻译总 ...

  9. Socket编程实践(9) --套接字IO超时设置方法

    引:超时设置3种方案 1. alarm超时设置方法 //代码实现: 这种方式较少用 void sigHandlerForSigAlrm(int signo) { return ; } signal(S ...

  10. [加密]在AES的CBC模式下 pydes vs crypto

    因为项目中有个非常重要的功能,并发量和访问量都很大,里面使用了pydes,总感觉它的性能不太好,从别人的对比来看,性能差距应该挺大,但还是自己测试下吧. 自己测试,心里更有数. 环境 macos 10 ...