Question45
You create and deploy a custom Web Part.
You add the Web Part to a page and receive a run-time error. You need to display the detailed information of the error on the page.
Which two actions should you perform? (Each correct answer presents part of the solution. Choose two.)
A. In the web.config file, set CallStack="True".
B. In the web.config file, set customErrors="RemoteOnly".
C. In the registry, set the EnableDebug value to 1.
D. In the registry, set the DisableLoopbackCheck value to 1.

解析:
 本题大意就是你在部署一个Webpart后出现了运行时错误,如何在页面上呈现详细的错误信息。Sharepoint提供了不少的手段来捕获详细的错误信息,但就本题提供的选项来看,它集中在两点: Web.config与Registry。
 关于Web.config的上述两个属性的描述
使用 CallStack 属性
Windows SharePoint Services 可设置 CallStack 属性,该属性位于 Web.config 文件中。CallStack 属性控制当 ASP.NET 处理向所有本地和远程客户端发送页面的请求时,如果发生系统级异常,是否显示调用堆栈和异常消息。在默认情况下,Windows SharePoint Services 禁用 CallStack 属性,并显示一组有限的异常以防信息泄漏。要在发生异常时接收调用堆栈和异常消息,请启用 CallStack 属性。
方法:
启用 CallStack 属性
1. 在 Windows 资源管理器中,浏览至以下文件夹:
本地驱动器:\InetPub\WWWRoot\bin\
2. 双击 Web.config 文件。
3. 在 Web.config 文件中,搜索 元素。
4. 在<SharePoint>元素中,找到<SafeMode MaxControls="50" CallStack="false"/> 标记并将其更改为<SafeMode MaxControls="50" CallStack="true"/> 。
5. 保存并关闭文件。
现在,在发生异常时,您将收到 ASP.NET 异常消息和堆栈跟踪信息。
使用 customErrors属性
此属性为 ASP.NET 应用程序提供有关自定义错误信息的信息。可以在应用程序文件层次结构中的任意级别上定义 customErrors 元素。
  相关的值有:
  On : 指定启用自定义错误。如果未指定 defaultRedirect,用户将看到一般性错误。
  Off :指定禁用自定义错误。这允许显示标准的详细错误
RemoteOnly : 指定仅向远程客户端显示自定义错误并且向本地主机显示 ASP.NET 错误。

所以若要使他人能够从本地服务器计算机上查看此特定错误信息的详细信息,请在位于当前 Web 应用程序根目录下的“web.config”配置文件中创建一个 <customErrors> 标记。然后应将此 <customErrors> 标记的“mode”属性设置为“RemoteOnly”。若要使他人能够在远程计算机上查看详细信息,请将“mode”设置为“Off”。
 
关于Registry(注册表)的上述选项的描述
注册表是windows操作系统中的一个核心数据库,其中存放着各种参数,直接控制着windows的启动、硬件驱动程序的装载以及一些windows应用程序的运行,从而在整个系统中起着核心作用。这些作用包括了软、硬件的相关配置和状态信息,比如注册表中保存有应用程序和资源管理器外壳的初始条件、首选项和卸载数据等,联网计算机的整个系统的设置和各种许可,文件扩展名与应用程序的关联,硬件部件的描述、状态和属性,性能记录和其他底层的系统状态信息,以及其他数据等。
  在本题中的两项的作用如下:
 EnableDebug:允许是否调试。
DisableLoopbackCheck:用于控制是否进行环回检查,常用于安全身份验证,用于帮助防止计算机受到反射攻击。
 即使从字面上判断也知道,Registry中的这两个键与如何在页面上呈现详细的错误信息毫无关系。
所以本题目正确选项应该是A.B
 
参考:
http://www.khamis.net/blog/Lists/Posts/Post.aspx?ID=12
http://msdn.microsoft.com/zh-cn/library/bb397417(v=vs.90).aspx
 
 
Question 46
You have a Web Part that causes an error.
You need to ensure that you can view the trace history in the Trace.axd file.
What should you configure in the web.config file?
A. In the <system.web> element, add the following line of code:
<trace enabled="true" localOnly="true" pageOutput="false" />
B. In the <SafeMode> element, configure the following attributes:
CallStack="true"
AllowPageLevelTrace="true"
C. In the <SafeMode> element, configure the following attributes:
CallStack="false"
AllowPageLevelTrace="true"
D. In the <system.web> element, configure the following element:
<trace enabled="false" localOnly="true" pageOutput="true" />
In the <SafeMode> element, configure the following attribute:
AllowPageLevelTrace="true"

解析:
 本题是想通过调整Web.config的配置来实现查看保存在Trace.axd文件中的跟踪信息。
 先来看看什么是Trace.axd文件:
   以往的Web开发,为了调试一个变量,会在页面中用Response.write输出一段字符串,以验证web程序是否运行到此处及是 否正确获取了变量。也有人会调用封装好的js框架,alert或msgbox一条信息。这个在asp时代是最常见的方法。如果要调试比较复杂的信息,这种方法就显得有点力不从心。不过,进入asp.net环境后,微软为我们提供了一个新的解决方案-Trace.axd
跟踪会将诊断信息和自定义跟踪消息追加到页面输出中,并将此信息发送给提出请求的浏览器。或者,您可以在单独的跟踪查看器 (Trace.axd) 中查看此信息,该查看器显示 ASP.NET Web 应用程序中每个页的跟踪信息。在 ASP.NET 处理页请求时,您可以使用跟踪信息来调查错误或不希望得到的结果。
所以Trace.axd它的功能主要是:配置 ASP.NET 代码跟踪服务以控制如何收集、存储和显示跟踪结果。
Trace.axd的关键的几个选项:
1、localOnly ,默认为false。这个很好理解。如果为true,只在本地输出跟踪信息。
2、enabled。是否启用跟踪。
3、pageOutput  指定在每一页的结尾是否呈现跟踪输出。如果是 false ,则只能通过跟踪实用工具访问跟踪输出。
4、requestLimit  指定在服务器上存储的跟踪请求的数目。最大为10000,默认为10
5、traceMode  指定显示跟踪信息的顺序。SortByCategory或 SortByTime(默认)

如果要跟踪信息显示在与之关联的页的页尾,请将 trace 元素的 PageOutput 特性设置为 true。如果启用应用程序级跟踪,但不希望显示某些页的跟踪信息,可以在这些页的 @ Page 指令中将 Trace 特性设置为 false。
Trace元素可配置的位置:
  Machine.config
根级别的 Web.config
应用程序级别的 Web.config
虚拟或物理目录级别的 Web.config

从上面可以看出您可以对各个页进行配置以显示跟踪信息。此外,还可以对应用程序的 Web.config 文件进行配置,以便在除显式禁用跟踪的页之外的所有页中显示跟踪信息。设置应用程序级跟踪非常有用,因为这样就不必对各个页进行更改以启用或禁用跟踪。
 关于查看跟踪信息:
 你可以在各个页的底部查看跟踪信息。此外,在启用跟踪后,可以使用跟踪查看器 (Trace.axd) 来查看 ASP.NET 收集并缓存的跟踪信息。
 如果要跟踪信息显示在与之关联的页的页尾,请将 trace 元素的 PageOutput 特性设置为 true。
 如果启用应用程序级跟踪,但不希望显示某些页的跟踪信息,可以在这些页的 @ Page 指令中将 Trace 特性设置为 false。
 默认情况下,只能在本地 Web 服务器计算机上查看应用程序级跟踪。若要使应用程序级别跟踪信息可以通过远程计算机查看,可以将 trace 元素的 LocalOnly 特性设置为 false。
  为保护 Web 应用程序的安全,应仅在开发或部署应用程序时使用远程跟踪功能。在将应用程序传输到成品 Web 服务器之前,请确保禁用了该功能。为此,请在 Web.config 文件中将 LocalOnly 特性设置为 true。
 下面的示例演示一个可为多达 40 个请求收集跟踪信息的应用程序跟踪配置。该配置还使计算机(服务器除外)上的浏览器可以显示跟踪查看器。

<configuration>
<system.web>
<trace enabled="true" requestLimit="40" localOnly="false" />
</system.web>
</configuration>

有了上面的知识点,我们回过头来看各选项:
选项A: 正符合本题的设置需求,是本题的答案。
选项B.C用到了  <SafeMode>元素用于配置安全模式处理系统。
其中CallStack设置是否启用调用堆栈,默认情况下,CallStack 属性设置为 false。这种设置的影响是阻止 ASP.NET 会报告的大多数系统异常信息。这样做是为了防止信息泄露。如果设置为true,则会报告更多的异常信息,即堆栈信息。AllowPageLevelTrace属性设置是否允许跟踪页面级的信息。
当你遇到Sharepoint网页报错,且报错信息为: “未知错误” 时。就可以在该站点下的配置文件里面修改节点
1.<SafeMode MaxControls="200" CallStack="false" DirectFileDependencies="10" TotalFileDependencies="50" AllowPageLevelTrace="false">
改为:
<SafeMode MaxControls="200" CallStack="true" DirectFileDependencies="10" TotalFileDependencies="50" AllowPageLevelTrace="false">
2.<customErrors mode="On " /> 改为:<customErrors mode="Off " />
3.<compilation batch="false" debug="false ">改为; <compilation batch="false" debug="true ">
修改后就会把错误源显示出来。
   所以选项B.C和是否把信息输出到Trace.axd文件以供查看没有关系。

选项D .此项和选项A类似,它的错误在于设置了pageOutput为True,这就意味着跟踪信息不会写入到Trace.axd文件,而是直接显示在与之关联的页的页尾。所以选项D是错误的。

所以本题目正确选项应该是A

参考:
http://msdn.microsoft.com/en-us/library/6915t83k.aspx
http://msdn.microsoft.com/zh-cn/library/bb386420(v=vs.100).aspx
http://msdn.microsoft.com/zh-cn/library/6915t83k(VS.80).aspx

Question47
You create a user control named MySearch.ascx.
You plan to change the native search control in SharePoint to MySearch.ascx. You need to provide the site administrator with the ability to change the out-of¬the-box search control to MySearch.ascx.
What should you do?

A. Configure the SearchBox.dwp in the Web Part gallery.
B. Override the search delegate control by using a Feature.
C. Modify the <SafeControls> element in the web.config file.
D. Modify \14\TEMPLATE\FEATURES\SearchWebParts\SearchBox.dwp.

解析:
 本题是想要实现替换系统默认的Search控件,代之以用户自定义开发的用户控件。
其实质是Delegate Control的知识点。
 
选项A. Configure the SearchBox.dwp in the Web Part gallery. 此选项的意思是把SearchBox解决方案部署到Web Part Gallery,这只是改变了Solution文件包的存放位置,与替换系统默认的Search控件毫无关系。
选项B. Override the search delegate control by using a Feature. Delegate Control一般用于在Master Page上,它允许你使用自定义的控件来替换Sharepoint默认的控件。本题就是要实现替换系统默认的Search控件,代之以用户自定义开发的用户控件,此功能在我以前的一篇博文中实现过,请参见http://www.cnblogs.com/wsdj-ITtech/archive/2011/11/26/2263041.html

选项C. Modify the <SafeControls> element in the web.config file。 在Sharepoint 中只有确保受信任的控件才能在系统中使用。SharePoint将只加载在web.config文件中的SafeControl元素定义的控件。所以本选项只是注册了用户自定义控件为安全的可显示控件,并没有解决它能代替系统默认的Search控件的问题。
选项D. Modify \14\TEMPLATE\FEATURES\SearchWebParts\SearchBox.dwp. 此选项只是围绕用户自定义控件的解决方案部署包进行修改,与替换系统默认的Search控件毫无关系。

所以本题目正确选项应该是B
参考:
http://sharepointschool.net/2010/10/14/customizing-the-search-box-using-a-feature/
http://msdn.microsoft.com/zh-cn/library/ms470880(v=office.14).aspx
http://msdn.microsoft.com/zh-cn/library/ff650763.aspx

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

  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. lucene.net的一个动态更新类

    工作的需要,需要对于lucene.net索引即时的更新,毕竟lucene.net的索引重建的话比较慢,数据量大的时候建下要几天,所以就写个了缓冲类来解决即时的更新的问题,其实还是比较简单的. 大体上的 ...

  2. c/c++: c++继承 内存分布 虚表 虚指针 (转)

    http://www.cnblogs.com/DylanWind/archive/2009/01/12/1373919.html 前部分原创,转载请注明出处,谢谢! class Base  {  pu ...

  3. html5[1]:优化Android Webview性能

    尽量少用position:relative 做一个OTO项目时,页面上下滑动时,颤抖的很厉害: 页面中主要是图片比较多,开始以为是图片多的原因,但是把所有图片都不加载,还是颤抖: 后来,去掉所有外部的 ...

  4. Ubuntu主题美化--使用WPS风格

    五一就这么过去了,我也没有出去玩,一个人闲的蛋疼,无聊就把ubuntu美化一下. 闲话不多说,先看效果: 壁纸是我自己制作的的,如果喜欢另存一下下面这张图设置成背景就可以了,分辨率是1366x768. ...

  5. Eclipse为Unity3d编写jar组件

    Unity3d和Android的交互有两种方式: (1)使用Eclipse为Unity3d编写库,也就是jar包,然后导入到U3D中使用: (2)将Unity3d项目导出为Android项目,然后直接 ...

  6. java中图片文件的判断

    javax.imageio 类 ImageIO BufferedImage bi = ImageIO.read(resFile);//resFile --- InputStream if(bi == ...

  7. 关于MySQL的Admin Ping Command

    前言: 最近在线上诊断QPS飙升的过程中深入进行了下Admin Ping Command的测试.此外,再一些国外文章中最近也读到了一些相关知识,所以写成一篇博文做一下总结. 1. 关于Admin Pi ...

  8. 二叉堆(一)之 图文解析 和 C语言的实现

    概要 本章介绍二叉堆,二叉堆就是通常我们所说的数据结构中"堆"中的一种.和以往一样,本文会先对二叉堆的理论知识进行简单介绍,然后给出C语言的实现.后续再分别给出C++和Java版本 ...

  9. Linux - 常用Shell快捷键

    Common Shortcut Key 用途 快捷键 说明 光标移动 Ctrl + a 把光标移到行首 Ctrl + e 把光标移到行尾 Ctrl + x 在 EOL 和当前位置移动光标 输入编辑 C ...

  10. [git]安装git-pylint-commit-hook提高python项目中的代码质量

    什么是'git-pylint-commit-hook' 我在工作中,团队为了保证代码和提高代码的质量,要求每个项目都要求安装git-pylint-commit-hook,它是个钩子,会在你提交代码到本 ...