1、创建Silverlight时,选择Silverlight 4,不要选择版本5,试了很久版本5都调用不了,自己也不知道什么原因,谷歌也没找到答案,后来尝试版本4,可以调用;

  至于Host the Silverlight application是否勾选没有影响;

SharePoint Silverlight中如何使用Net客户端对象模型

  2、Silverlight中使用客户端脚本,和Net中不一样,要添加下面两个引用;

SharePoint Silverlight中如何使用Net客户端对象模型

  3、两个需要的引用,在服务器上位置为C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions15TEMPLATELAYOUTSClientBin,如下图:

SharePoint Silverlight中如何使用Net客户端对象模型

  4、然后在Silverlight的cs文件中添加引用,如下:

  using ..Client;

  然后添加读取List的代码,如下:

SharePoint Silverlight中如何使用Net客户端对象模型
public string url = "http://server:80";  Web web;  List list;  ListItemCollection itemColl;  string listName = "Silverlight";  string camlStr = "";    private void btn_ShowMessage_Click(object sender, RoutedEventArgs e)  {      getdata();  }    public void getdata()  {      try      {          ClientContext context = new ClientContext(url);          web = context.Web;          list = web.Lists.GetByTitle(listName);          CamlQuery query = new CamlQuery();          query.ViewXml = camlStr;          itemColl = list.GetItems(query);          context.Load(itemColl);          context.ExecuteQueryAsync(new ClientRequestSucceededEventHandler(OnSuccessed),              new ClientRequestFailedEventHandler(OnFailed));      }      catch (Exception ex)      {          MessageBox.Show(ex.Message);      }  }    private void OnSuccessed(Object sender, ClientRequestSucceededEventArgs args)  {      this.Dispatcher.BeginInvoke(LoadData);  }    private void LoadData()  {      String data = string.Empty;      foreach (ListItem item in itemColl)      {          data += item["Title"].ToString() + "rn";      }      lb_Message.Content = data;  }    private void OnFailed(Object sender, ClientRequestFailedEventArgs args)  {      this.Dispatcher.BeginInvoke(delegate() { MessageBox.Show("Get Data Failed"); });  }
SharePoint Silverlight中如何使用Net客户端对象模型

  5、前台页面添加Silverlight展示WebPart,添加完毕如下图:

SharePoint Silverlight中如何使用Net客户端对象模型

  6、点击ShowMessage,执行客户端对象模型的方法,结果如下图:

SharePoint Silverlight中如何使用Net客户端对象模型

总 结

  自己对于Silverlight不是很熟悉,只是小有了解SharePoint,所以有问题之处还请大家指正。尝试了很多次,才发现如何能在Silverlight中使用SharePoint客户端对象模型,希望分享给有需要的人,给大家一个参考吧。

  好了,就到这里,休息。。休息一下。。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注