Question 77
You have a SharePoint list named Announcements.
You have an event receiver that contains the following code segment. (Line numbers are included for reference only.)
01 public override void ItemAdding(SPItemEventProperties properties)
02 {
03   if (properties.ListItem["Title"].ToString().Contains("secret"))
04   {
05    
06   }
07 }
You need to prevent users from adding items that contain the word "secret" in the title to the list.
Which code segment should you add at line 05?
A. properties.Cancel = false;
B. properties.Cancel = true;
C. properties.Status = SPEventReceiverStatus.Continue;
D. return;

解析:
 本题是想在ItemAdding这个Event中操控添加的Item,如果新添加的Item的Title Field的值包含了” secret”单词,则取消添加操作。
 如果看了Question 75的解析,你就应该能判断本题的正确答案了。因为SPItemEventProperties与SPListEventProperties 均使用Cancel属性来获取或设置是否取消当前的Event。 而Status属性则用于获取或设置当前俘获的Event的状态值。
 选项D:  return则是用于终止它出现在其中的方法的执行并将控制返回给调用方法。与仅中止当前的Event事件没有关系。
所以本题目正确选项应该是B

参考:
SPItemEventProperties Class
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spitemeventproperties.aspx

Question 78
You have a timer job that has the following constructors. (Line numbers are included for reference only.)
01 public TimerJob1 () : base() { }
02 public TimerJob1(SPWebApplication wApp)
You need to ensure that the timer job runs on the first available timer server only.
Which base class constructor should you use at line 02?
A. public TimerJob1(SPWebApplication wApp) : base
(null, wApp, null, SPJobLockType.ContentDatabase) { }
B. public TimerJob1(SPWebApplication wApp): base
(null, wApp, null, SPJobLockType.Job){ }
C. public TimerJob1(SPWebApplication wApp):base
(null, wApp, null, SPJobLockType.None) { }
D. public TimerJob1(SPWebApplication wApp):base
("TimerJob1", wApp, null, SPJobLockType.None) { }

解析:
 本题是想要实现只在第一个可用的timer server上运行。通过在外层来封装了一个TimerJob1函数来隐藏SPJobLockType知识点。
 本题的核心就在于了解SPJobLockType的备选值:
1.SPJobLockType.None :可确保在运行 Microsoft SharePoint Foundation Web 应用程序服务的所有服务器上运行此作业。
2. SPJobLockType.Job : 可确保仅在运行 Microsoft SharePoint Foundation Web 应用程序服务的第一台可用服务器上运行此作业
3. SPJobLockType.ContentDatabase:在处理作业时,锁定内容数据库
 所以只有选项B采用了SPJobLockType.Job,即可确保仅在运行 Microsoft SharePoint Foundation Web 应用程序服务的第一台可用服务器上运行此作业。
所以本题目正确选项应该是B

参考:
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spjoblocktype.aspx
http://msdn.microsoft.com/zh-cn/library/ff464297(v=office.14).aspx

Question 79
You create a client application that remotely calls the Business Connectivity Services (BCS) object model.
You need to create the context that will be used to request a cache refresh.
Which code segment should you use?
A. BdcService cCtx = SPFarm.Local.Services.GetValue<BdcService>(string.Empty);
B. ClientContext cCtx = new ClientContext(string.Empty);
C. RemoteOfflineRuntime cCtx = new RemoteOfflineRuntime();
D. RemoteSharedFileBackedMetadataCatalog cCtx = new RemoteSharedFileBackedMetadataCatalog();

解析:
  本题是想以编程方式从一个客户端应用程序中执行缓存刷新。 这属于BCS的应用模型。
  下面我们就先来了解一下其大致的背景知识。
  首先什么是BCS: Microsoft Business Connectivity Services (BCS) 是 Microsoft Office 2010 和 SharePoint 2010 中的一项功能,旨在帮助开发人员和用户将数据放入 SharePoint。 在 SharePoint 中呈现外部数据能让用户构建复合应用程序,以便更好地访问关键信息,更方便地与这些信息交互。也就是说:BCS是Sharepoint用来与外部打交道的。
  通过 BCS,您可以开发自己的外部应用程序,或使用诸如 Office 应用程序(Excel、Outlook、InfoPath、Word 等)和 SharePoint 处理后端系统中的数据。 Office 2010 和 SharePoint 2010 都提供 BCS 组件,因此,该组件在客户端计算机和服务器计算机上均可用。 
在设计支持 BCS 的解决方案时,首先是定义一个实体模型,该实体模型可以连接到外部系统,并将来自这些外部数据结构的数据映射到 BCS 数据结构中。 该实体模型称为“外部内容类型”(ECT)。 通过 SharePoint Designer 或 Visual Studio,可以根据需要为解决方案创建任意多的 ECT。ECT 元数据(包括用于定义实体模型的代码)将发布和存储在一个 SharePoint 元数据存储中。 通过 SharePoint 工作区或 BCS 提供的独立打包工具,可以将发布的 ECT 模型下载并安装在用户客户端计算机上。
在运行时,客户端或服务器上的 BCS 运行时组件调用该 ECT 模型来与外部系统通信。
 在客户端上,来自外部系统的数据缓存在用户计算机上的 SQL Server Compact Edition (SQL CE) 数据库之中。 缓存的数据随后可通过 BCS API 在 Office 应用程序中进行显示和操作。 由用户对缓存数据所做的更改将在用户计算机上的同一 SQL CE 数据库中进行排队。 随后,BCS 运行时组件负责通过 ECT 模型将这些更改更新到外部系统。
大部分时候,由BCS运行时来负责缓存与数据实体的同步,但有些时候,用户希望从外部系统明确刷新其本地缓存。这就是本题产生的背景。
  Microsoft Business Connectivity Services (BCS) 提供了丰富且可扩展的对象模型,您可以利用这些模型创建基于现有 Business Connectivity Services 功能构建的自定义解决方案。
1.BDC 对象模型:包括(i.服务器和客户端上的 BDC 运行时对象模型。ii.服务器上的 BDC 管理对象模型和客户端上的 BDC 管理客户端对象模型)
2.客户端上的 BCS 缓存对象模型【这就是本题需要用到的对象模型】
3.运行 SharePoint Server 2010 的服务器上的 BCS 解决方案包对象模型(此对象模型在 SharePoint Foundation 2010 中不可用)
来看看本题用到的客户端上的 BCS 缓存对象模型:
Microsoft Business Connectivity Services (BCS) 提供了一个公共对象模型(即 Microsoft.BusinessData.Offlining 命名空间)以便以编程方式刷新 BCS 客户端缓存、修改缓存订阅和查找并纠正错误。
在 BDC 运行时对象模型中的方法实例级别,可利用 Business Connectivity Services 传入一个操作模式,该模式告知运行时是否要使用缓存以及如何使用缓存。Business Connectivity Services 支持两类缓存使用模式,如下所示:
1.联机  如果将应用程序设置为联机模式,则不使用缓存。对外部系统的所有调用(例如,Read 和 Update)将通过 Business Data Connectivity (BDC) Service 运行时直接传送到外部系统。
2.缓存  如果将应用程序设置为缓存模式,则使用缓存。在部署时,使用外部系统中的实体实例填充缓存,并按指定间隔刷新外部系统中的数据。不会立即将操作传送到外部系统,而是将其传送到缓存。缓存会将这些操作放入操作队列,并逐个执行它们。
  由上可知,本题要用到的功能存在于Microsoft.BusinessData.Offlining 命名空间中。当我们以编程方式请求客户端上的缓存刷新时,我们需要用到RemoteOfflineRuntime对象,下面就是一段示例代码(此代码在运行时将启动 BCSSync 服务(如果该服务尚未运行)并在 BDC 客户端缓存中请求刷新。):
 RemoteOfflineRuntime offlineRuntime = new RemoteOfflineRuntime();
ISubscriptionManager subManager = offlineRuntime.GetSubscriptionManager();
ISubscription sub = subManager.GetSubscription("<EntityNameSpace>", "<EntityName>", "<ViewName>", "<SubscriptionName>");
sub.RequestRefresh(true);
  有了上述示例代码,我们很快就能定位本题的答案即:选项C
选项A:定义了一个BDCServie对象并试图获取BCS服务的引用。Business Data Connectivity (BDC) Service 是新版本的业务数据目录,它之前是在 Microsoft Office SharePoint Server 2007 中提供的,现在在 Microsoft SharePoint Foundation 2010 中提供。BDC 作为 Microsoft SharePoint Foundation 2010 中的共享服务实现,并且它仍依赖于元数据存储。利用 BDC 服务,您能以声明方式对外部系统进行建模,以便您能公开 SharePoint Server 2010 中的外部数据(对于 具有企业版客户端访问许可证的 Microsoft SharePoint Server 2010,也可在 Microsoft Office 2010 应用程序中执行此操作)。BDC 填补了 SharePoint 网站和业务应用程序之间的间隙,使您能够将各种外部系统中的关键数据引入 SharePoint 列表(通过新的外部列表功能和外部数据列)、Web 部件、搜索、用户配置文件和自定义应用程序。本选项就试图获取BCS服务的引用。
选项B:试图创建一个ClientContext对象,ClientContext对象是Sharepoint客户端对象模型的重要组成。可以使用它来返回当前WebApplication,Site,Site Collection或者Server version等的上下文相关信息。 
选项D:也属于BCS的编程范畴,RemoteSharedFileBackedMetadataCatalog用于获取元数据目录。若要通过 Office 2010 加载项使用 BDC,则您的代码必须先获取对元数据目录的访问权。若要访问 BCS 客户端缓存,则应获取 RemoteFileBackedMetadataCatalog。
所以本题目正确选项应该是C

参考:
http://msdn.microsoft.com/zh-cn/library/ee559351.aspx
http://msdn.microsoft.com/zh-cn/library/ff464331(v=office.14).aspx
http://msdn.microsoft.com/zh-cn/library/ee556378(v=office.14).aspx
http://msdn.microsoft.com/zh-cn/library/ff464395(v=office.14).aspx


06 group.Update();
Which code segment should you add at line 05?
A. group.AddUser(user);
B. group.Owner = user;
C. user.AllowBrowseUserInfo = true;
D. user.Update();

解析:
 本题想要向一个Group中添加一个User。
  本题即使凭感觉也应该能找准答案,因为操作是针对SPGroup对象的,添加的参数是SPUser对象,所以应该用SPGroup对象的AddUser方法来添加一个SPUser对象,答案是A。
选项B. group.Owner = user;设置这个Group的所有者为此用户。
选项C. user.AllowBrowseUserInfo = true; 标志此用户是否有权获取Web site的其它用户的信息。
选项D. user.Update();更新此用户信息到数据库中。
所以本题目正确选项应该是A

参考:
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spgroup.adduser.aspx
http://msdn.microsoft.com/en-us/library/ms456617.aspx
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spgroup.aspx

Sharepoint学习笔记—习题系列--70-573习题解析 -(Q77-Q80)的更多相关文章

  1. Sharepoint学习笔记—ECM系列—文档列表的Metedata Navigation与Key Filter功能的实现

    如果一个文档列表中存放了成百上千的文档,想要快速的找到你想要的还真不是件容易的事,Sharepoint提供了Metedata Navigation与Key Filter功能可以帮助我们快速的过滤和定位 ...

  2. Sharepoint学习笔记—ECM系列--文档集(Document Set)的实现

    文档集是 SharePoint Server 2010 中的一项新功能,它使组织能够管理单个可交付文档或工作产品(可包含多个文档或文件).文档集是特殊类型的文件夹,它合并了唯一的文档集属性以及文件夹和 ...

  3. Sharepoint学习笔记—习题系列--70-576习题解析 --索引目录

        Sharepoint学习笔记—习题系列--70-576习题解析  为便于查阅,这里整理并列出了70-576习题解析系列的所有问题,有些内容可能会在以后更新. 需要事先申明的是:     1. ...

  4. Sharepoint学习笔记—习题系列--70-573习题解析 --索引目录

                  Sharepoint学习笔记—习题系列--70-573习题解析 为便于查阅,这里整理并列出了我前面播客中的关于70-573习题解析系列的所有问题,有些内容可能会在以后更新, ...

  5. Deep Learning(深度学习)学习笔记整理系列之(五)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  6. Deep Learning(深度学习)学习笔记整理系列之(八)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  7. Deep Learning(深度学习)学习笔记整理系列之(七)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  8. Deep Learning(深度学习)学习笔记整理系列之(六)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  9. Deep Learning(深度学习)学习笔记整理系列之(四)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  10. Deep Learning(深度学习)学习笔记整理系列之(三)

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

随机推荐

  1. ListView具有多种item布局——实现微信对话列

    这篇文章的效果也是大家常见的,各种通讯应用的对话列表都是这种方式,像微信.whatsapp.易信.米聊等.我们这篇文章也权当为回忆,形成简单的笔记.这篇文章参考了2009年Google IO中的< ...

  2. PLSQL快捷补充代码设置

    菜单Tools-->Preferences...然后依次选择下图红色选项 弹出下图对话框 输入需要快速生成的语句点击保存 点击Save后在slq窗口中输入 设置的语句缩写 列入:第一个sf  然 ...

  3. RESTful API 设计指南【转】

    网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......). 因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信.这导致AP ...

  4. 自己动手搭建 CAS(Central Authentication Service) 环境,为了单点登录(Single Sign On , 简称 SSO )

    介绍 刚刚搭建 CAS 成功了,现在记录下来,怕以后忘记,同时也给需要帮助的人.CAS 搭建需要服务端和客户端,服务端是 Java 写的,如果自己搭建则需要安装与配置 Java 环境.客户端可以是多种 ...

  5. 网络爬虫urllib2 tornado

    百度不支持用tornado请求,可以用美团开放API 测试. import tornado.httpclient def fetch(url): http_header={'User-Agent':' ...

  6. MPU9250调试

    MPU9250 芯片概述 MPU9250芯片是一个9轴姿态传感芯片,其中包含了3轴加速度传感器.3轴角速度传感器以及三轴磁力计. 其本质上是MPU6050芯片+AK8963. 可以获取传感芯片的加速度 ...

  7. sourceinsight技巧

    Source Insight实质上是一个支持多种开发语言(java,c ,c++等等)的编辑器,只不过由于其查找.定位.彩色显示等功能的强大,常被我们当成源代码阅读工具使用. 所以,为了有效的阅读源程 ...

  8. js-条件语句、循环语句

    一. 常见条件语句 if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码 if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码 if... ...

  9. codevs4247奇特的生物 解析报告

    4247 奇特的生物 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description 科学家们最近发现了一种奇怪的生物,它们每天长大一岁 ...

  10. [Architect] Abp 框架原理解析(5) UnitOfWork

    本节目录 介绍 分析Abp源码 实现UOW 介绍 UOW(全称UnitOfWork)是指工作单元. 在Abp中,工作单元对于仓储和应用服务方法默认开启.并在一次请求中,共享同一个工作单元. 同时在Ab ...