5年前(嗯,是5年前),SharePoint 2010刚发布的时候,曾经和kaneboy试图一起写一本关于SharePoint 2010开发的书,名字叫《SharePoint 2010 应用开发指南》(涂指南这个名字不是白叫的)。给大家看一下当年列出来的大纲:

  • SharePoint 2010开发概览
    • SharePoint 2010基础架构,SharePoint与ASP.NET、IIS的关系
    • 解释服务器场的概念,从硬件拓扑层次解释APP、WFE
    • 解释Web应用程序、网站集、网站、列表和文档库的概念
    • 介绍SharePoint Solution Package和Feature,介绍Sandboxed Solution
    • 介绍VS 2010 SP Tools
    • 演示使用VS2010 SP Tools开发一个简单的Visual Web Part项目的过程
    • 如何使用VS2010 SP Tools所生成的.wsp,通过PowerShell脚本手工部署.wsp
  • 访问SharePoint网站和数据
    • 使用对象模型访问网站、列表数据
    • 使用对象模型访问文档库中的文件
    • 使用CAML进行数据查询
    • SPLinq
    • 使用用户、用户组、权限相关的对象模型
  • 界面开发
    • 解释SharePoint页面模型,Site Page/Application Page
    • Web Part
    • Page
    • Ribbon UI扩展
    • Dialog UI扩展
  • 从客户端访问SharePoint网站和数据
    • Client Managed OM
    • ECMAScript
    • Silverlight
  • Business Connectivity Services
    • 解释BCS、ECT、External List
    • 使用SPD创建ECT
    • 使用VS2010 SP Tools创建BCS Model
  • 事件处理程序
    • 解释事件处理程序,SharePoint中的事件处理程序类型
    • 列表事件处理程序
    • 网站事件处理程序
  • 工作流
    • SharePoint工作流模型
    • 使用Visio + SPD构建简单工作流
    • 使用VS2010 SP Tools构建工作流
  • Service Application框架
    • 解释Service Application框架
    • 开发一个简单的自定义Service Application
  • SharePoint 2010商业组件
    • InfoPath Forms Services
    • Excel Services
    • Word Automation Services
  • SharePoint Designer 2010

当时我们俩一共完成了4章,不过后来我们得了一场重病(懒癌),所以后来……就没有后来了。

书稿在我电脑里躺了无数年,于是今天打算让它重见天日,免费放到博客上。

我当时写的就是SharePoint服务器端对象模型那一章,当时是按照SharePoint 2010的内容来写的,不过服务器端对象模型这个东西,常用的操作从2003到2013几乎没什么变化,所以今天也能继续用。

这一章的结构就是上面那个大纲里面的结构,六个小节,在Word里一共96页,4万多字(不算代码),估计可能要贴很长时间,不过因为反正这章已经写完了,所以至少这次肯定不会坑了。

这部分内容主要面向对SharePoint有一定了解,但是不太熟悉对象模型的开发人员(比如刚接触SharePoint不久的开发人员),当然如果有经验的也可以随便进来看一眼,因为我也发现过写了好几年SharePoint程序的某些程序员,在根据id获取列表条目的时候,还在用SPQuery查询,而不是用GetItemById这个方法……

 

顺便做个广告,我们翻译的《SharePoint 2013开发入门经典》已经上市,里面基本上都是SharePoint 2013开发的新特性,欢迎购买。

豆瓣读书地址:http://book.douban.com/subject/25984590/ (购买链接见该页面右侧)

目前正在翻译的下一本书《JavaScript & jQuery》(http://book.douban.com/subject/20022383/)主要面向没有任何程序开发经验的网站制作人员,预计交稿时间12月中旬,按上一本书的编辑速度,估计得明年中才能上市了……

 

正文从下一篇开始,明天。

开启貌似已经过时很久的新坑:SharePoint服务器端对象模型的更多相关文章

  1. 使用Fragment应用放置后台很久,被系统回收,出现crash

    使用Fragment应用放置后台很久,被系统回收,出现crash:原因:系统做了源码FragmentActivity调用onSaveInstanceState保存Fragment对象,这时候系统恢复保 ...

  2. 【2020Java最新学习路线】写了很久,这是一份最适合普通大众、科班、非科班的路线

    点赞再看,养成习惯,微信搜索[三太子敖丙]关注这个互联网苟且偷生的工具人. 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试完整考点.资料以及我的 ...

  3. 【高并发】高并发环境下构建缓存服务需要注意哪些问题?我和阿里P9聊了很久!

    写在前面 周末,跟阿里的一个朋友(去年晋升为P9了)聊了很久,聊的内容几乎全是技术,当然了,两个技术男聊得最多的话题当然就是技术了.从基础到架构,从算法到AI,无所不谈.中间又穿插着不少天马行空的想象 ...

  4. 很久之前写的Ajax库

    很久之前写的一个小型AJAX的js,放在上面以免以后想玩了找不到了. // version : 0.1 beta // author : __Ajax function __Ajax(url,opti ...

  5. SVN模型仓库中的资源从一个地方移动到另一个地方的办法(很久才解决)

    弄了很久,想使用domove这个操作,但是都失败了.最后给svnkit的邮箱写了封邮件,他们告诉我这样做就成功了.实际上是使用docopy这个函数实现了move操作.package com.repos ...

  6. Yii2 关于yii\db\Connection::open耗时很久的问题(1000ms左右)

    关于这个问题我纠结了很久,每次打开网页yii\db\Connection::open几乎都耗时1000ms. 其实这个问题很好解决:只要把config\db.php配置信息里的localhost,改成 ...

  7. chrome浏览器上传图片反应很慢,延迟很久才弹出窗口

    chrome浏览器上传图片反应很慢,延迟很久才弹出窗口 一个上传图片的控件,点击按钮上传图片,用chrome(谷歌浏览器)时,点击按钮后,要等好几秒才弹出文件选择窗口 可以试一下,把网络断开,这个问题 ...

  8. 解决ssh连接慢,挂起在SSH2_MSG_SERVICE_ACCEPT信息之后很久的问题

    问题现象:无论是ssh 还是 scp 都会连接很久才提示输认证信息(注意:是连接慢) 如本机IP:192.168.18.208 (Hostname: ThinkPad) 目标主机:192.168.18 ...

  9. mysql 去除重复 Select中DISTINCT关键字的用法 在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是 distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰了很久,用distinct不能解决的话,

      在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记 ...

随机推荐

  1. 前端打包利器:webpack工具

    一.什么是WebPack,为什么要使用它? 1.为什要使用WebPack 现今的很多网页其实可以看做是功能丰富的应用,它们拥有着复杂的JavaScript代码和一大堆依赖包.为了简化开发的复杂度,前端 ...

  2. Java 中 ConcurrentHashMap 原理分析

    一.Java并发基础 当一个对象或变量可以被多个线程共享的时候,就有可能使得程序的逻辑出现问题. 在一个对象中有一个变量i=0,有两个线程A,B都想对i加1,这个时候便有问题显现出来,关键就是对i加1 ...

  3. python 常用系统参数

    获取当前路径: os.path.abspath('.') 或os.getcwd() 获取上一级路径: print os.path.abspath('..') 获取上上一级路径:  os.path.ab ...

  4. android Broadcast 总结

    1, 生命周期 在android官方文档中,推荐我们在onResume中进行 registerReceiver, 在onPause中进行unRegisterReceiver. 他们给出的理由是: If ...

  5. 2017.8.5 VMware的介绍与安装

    1 VMware简介 官网地址:http://www.vmware.com VMware的功能: 是一个虚拟PC的软件,可以在现有的操作系统上虚拟出一个新的硬件环境,相当于模拟出一台新的PC,以此来实 ...

  6. TCP/IP 网络编程(五)

    优于 select 的 epoll (I/O 复用) select 速度慢的原因 调用select后针对全部文件描写叙述符的循环 每次调用函数时都须要向该函数传递监视对象信息 select并非把发生变 ...

  7. java中native方法的使用

    在非常多情况下,java须要调用其它语言的代码,比方c的代码.那么这个时候java中native方法就发挥作用了.以下就介绍native方法的使用. 一.JNI使用流程 a.编写带有native声明的 ...

  8. css3中的新特性经典应用

    这篇文章主要分析css3新特性的典型应用,都是干活,没得水分. 1.动画属性:animation. 利用animation可以实现元素的动画效果,他是一个简写属性,用于设置6个动画属性:aminati ...

  9. 使用UIDatePicker

    什么是UIDatePicker 用官方文档的话来说,UIDatePicker就是使用多个滚轮来选择日期和时间的类.官方的示例有定时器,闹钟(设置时间)部件.正确设置后,UIDatePicker对象会在 ...

  10. HTTP协议断点续传

    using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Net;usi ...