[SharePoint][SharePoint Designer 入门经典]Chapter13 客户端Silverlight编程
1、使用Silverlight,CAML和Linq取得数据
2、编程性创建更新删除列表数据项
3、修饰列表和库的配置
4、管理文件和文件夹
5、修改快速启动和顶部导航条
【使用Silverlight,CAML,Linq获取数据】
无论使用Javascript还是silverlight,都要通过http://yoursiteurl/_vti_bin/client.svc这个web service来实现,使用客户端容易实现沙箱解决方案。不会危害到服务器
所需客户端对象模型在服务器上C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\ClientBin.需要拷贝到开发环境中
变成成功之后的xap文件在Bin\Debug or Bin\Release
使用ClientContext context = new ClientContext(fullsiteurl);获得客户端上下文
如果没有Linq,你要用这种方式查询Tasks list
ClientContext context = ClientContext.Current;
Web site = context.Web;
List tasks = site.Lists.GetByTitle(“MyTasks”);
this.items = tasks.GetItems(new CamlQuery());
context.Load(this.items);
context.ExecuteQueryAsync(OnSuccess, OnFailure);
使用Linq
ClientContext context = ClientContext.Current;
Web site = context.Web;
this.tasks = site.Lists.GetByTitle(“MyTasks”);
ListItemCollection items = tasks.GetItems(new CamlQuery());
var query = from t in items
select t;
this.results = context.LoadQuery(query);
context.ExecuteQueryAsync(OnSuccess, OnFailure);
创建Task类
public class Task
{
public int Id { get; set; }
public string Title { get; set; }
public string Status { get; set; }
public string Priority { get; set; }
}
查询如下
var data = from t in this.results
select new Task {
Id = t.Id,
Title = (string)t.FieldValues[“Title”],
Status = (string)t.FieldValues[“Status”],
Priority = (string)t.FieldValues[“Priority”]
};
dataGrid1.ItemsSource = data;
[SharePoint][SharePoint Designer 入门经典]Chapter13 客户端Silverlight编程的更多相关文章
- [SharePoint][SharePoint Designer 入门经典]Chapter13 客户端JavaScript编程
1.创建客户对象模型的页面 2.使用CAML从SPS中取得数据 3.创建更新删除列表项目 4.为ribbon添加项目
- SharePoint 2013 Designer 入门教程
SharePoint的使用中,SharePoint Designer是非常重要的工具,我们可以通过Designer设计页面.母版页,维护.管理站点,也可以定制列表表单.数据视图,设计工作流等等.下面总 ...
- 系列文章--SharePoint 2013 Designer 入门教程
SharePoint的使用中,SharePoint Designer是非常重要的工具,我们可以通过Designer设计页面.母版页,维护.管理站点,也可以定制列表表单.数据视图,设计工作流等等.下面总 ...
- [SharePoint][SharePoint Designer 入门经典]Chapter7 数据源和外部内容类型
本章概要: 1.SharePoint能够使用的数据类型 2.如何从SharePoint列表和库中取得数据并展现出来 3.SharePoint访问远程数据 4.如何把外部数据源作为列表展现在你的SPS站 ...
- [SharePoint][SharePoint Designer 入门经典]Chapter12 高级工作流
1.使用Visio2010创建工作流标志 2.使用Visio Graphic服务可视化一个运行的工作流 3.使用InfoPath2010修饰工作流表单 4.导出可重用的工作流
- [SharePoint][SharePoint Designer 入门经典]Chapter11 工作流基础
1.SPS中可以创建的工作流的种类 2.SPD工作流基础 3.创建列表\库工作流 4.创建可重用的工作流 5.利用基于站点的工作流 6.SPD 工作流的限制和注意事项
- [SharePoint][SharePoint Designer 入门经典]Chapter10 Web部件链接
本章概要: 1.Web部件作用 2.如何添加和配置 3.如何个性化 4.如何导出,并在其他站点重利用 5.通过组合web part创建复杂的用户界面
- [SharePoint][SharePoint Designer 入门经典]Chapter8 XSLT数据试图和表单
本章概要: 1.不是利用XSLT web部件 2.使用XSLT web部件创建数据试图 3.使用XSLT表单web部件创建自定义表单 4.利用自定义动作执行列表表单
- C#入门经典第八章面向对象编程-3-Windows应用程序中的OOP
实例一:使用对象.代码如下: 首先从工具箱中拖一个按钮,并添加事件. private void button2_Click(object sender, EventArgs e) {//按钮的Butt ...
随机推荐
- 0x51 线性DP
数据结构没什么好写的..分块和整体二分还有点分学得很懂..果然我还是比较适合这些东西 poj2279 奇怪题,我的想法就是五维记录最边上的一斜排,会M,结果的的确确是锻炼思维的,正解并不是DP2333 ...
- Google TPU 揭密——看TPU的架构框图,矩阵加乘、Pool等处理模块,CISC指令集,必然需要编译器
Google TPU 揭密 转自:https://mp.weixin.qq.com/s/Kf_L4u7JRxJ8kF3Pi8M5iw Google TPU(Tensor Processing Unit ...
- 谷歌浏览器(chrome) —— 扩展应用程序
工具的使用--谷歌浏览器(chrome) (二) 1. 设置和下载方法 右上角菜单按钮 ⇒ 更多工具(more tools) ⇒ 扩展(Extensions) 打开该页面之后,会首先进入扩展(已安装应 ...
- axis2调用webservice教训
总结教训,axis2client调用WS接口时url不能加?wsdl,而用cxf调用时则要加上. 今天用axis2的RpcServerClient调用https的webservice接口,在设置完op ...
- PIE加载自定义服务数据详细介绍
这段时间我一直在研究如何用PIE加载在线地图服务,遇到了许多问题,多亏了技术员小姐姐的帮助,才让我能正确加载ArcGIS Online在线服务.天地图在线地图和谷歌在线地图.我是根据博客园PIE官方博 ...
- pythonOCC版 瓶子代码
#!/usr/bin/env python # -*- coding:utf-8 -*- ##Copyright 2009-2015 Thomas Paviot (tpaviot@gmail.com) ...
- B - Soldier and Bananas
Problem description A soldier wants to buy w bananas in the shop. He has to pay k dollars for the fi ...
- Unity3d Vector3
using UnityEngine; using System.Collections; public class test : MonoBehaviour { void Start () { Vec ...
- 以SqlHelper为例论面向对象中封装的使用(续)
上文以SqlHelper为例说明了面向对象中封装的好处,但是上文只是简单封装,考虑下面代码的情况: public static Activate GetByCode(string code) { Li ...
- Java基础10一面向对象
抽象 概念:当一个类中没有足够的信息描述一个现实生活中具体存在的事物,那么这个类就是抽象类. 抽象类一般是对概念领域中的描述. 语法: [访问修饰符] abstract class 类名{ } 如: ...