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. adb -s 设备名 设备名还有非法字符

    当有多台安卓设备在同一电脑上时 想敲adb控制某一个设备 需要如下格式 adb -s 设备名 设备名 可以用adb devices获取 当发现adb devices 获取的名字是特别长而且含有非法字符 ...

  2. [shiro学习笔记]第二节 shiro与web融合实现一个简单的授权认证

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/39933993 shiro官网:http://shiro.apache.org/ shi ...

  3. 【iOS 开发】Objective - C 面向对象 - 方法 | 成员变量 | 隐藏封装 | KVC | KVO | 初始化 | 多态

    一. Objective-C 方法详解 1. 方法属性 (1) OC 方法传参机制 Object-C 方法传参机制 : OC 中得参数传递都是值传递, 传入参数的是参数的副本; -- 基本类型 (值传 ...

  4. 关于GCJ02和WGS84坐标系的一点实验

    大家都知道,在兲朝的电子地图的坐标都是经过了一个坐标偏移,叫GCJ_02的东西.在网上发现了将WGS84经纬度转成GCJ02的一个代码,写了个小程序测试了下看看全国各地的偏移量有多大. 关于WGS84 ...

  5. 最简单的基于DirectShow的示例:视频播放器

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

  6. UNIX网络编程——客户/服务器程序设计示范(五)

        TCP预先派生子进程服务器程序,传递描述符 对预先派生子进程服务器程序的最后一个修改版本是只让父进程调用accept,然后把所接受的已连接套接字"传递"给某个子进程.这么做 ...

  7. uploadify在火狐下上传不了的解决方案,java版(Spring+SpringMVC+MyBatis)详细解决方案

     由于技术选型的原因,在一个产品中,我选择了uploadify,选择它的原因是它有完善的技术文档说明(http://www.uploadify.com/documentation/),唯一不足的是 ...

  8. Spring MVC中jsessionid所引起的问题 和解决

     转自:http://blog.csdn.net/seakingwy/article/details/1933687 jsessionid所引起的问题在Spring MVC当使用RedirectV ...

  9. 解决Plugin is too old,please update to a more recent version,or set ANDROID_DAILY_OVERRIDE..

    今天遇到了很诡异的事情. 昨天晚上还好好的工程今天就挂了,提示如下错误: Plugin is too old,please update to a more recent version,or set ...

  10. Graph Cut and Its Application in Computer Vision

    Graph Cut and Its Application in Computer Vision 原文出处: http://lincccc.blogspot.tw/2011/04/graph-cut- ...