最新软件免费共享点

ARB的安全解决方案定期发布免费共享点包括WebParts的,客户端应用软件,框架扩展,和其他杂项组件。
最近的免费软件是:

标题: 简单的共享点汇总Web部件
发布日期:10/22/2009

前两次免费Web部件发布:

SecureCenter用于SharePoint

通过SharePoint的安全集成,安全用于SharePoint集成。

SharePoint安全保证计划™

对于面向外部的共享点的部署,安全是一个尖锐的重要部署的关注。 了解如何通过日常的安全扫描,您可以确保外部商业用户和合作伙伴,他们可以合作的信心!

安全保障Web部件:



免费在线SharePoint安全工具

编写用于SharePoint扩展方法

扩展方法是一个巨大的编程结构增强执行抽象和模块化的代码段,贷款填补空白,是在非公开的API,目前如一个是SharePoint提供自己很好。 很多时候,可能有一个特殊的方法是在特定类型的理想,但它提供的选项不可用在运送空气污染指数由于密封和其他修改。 使用扩展方法,可以绕过这个限制,同时保持清洁的实现,避免深继承树引用。

扩展方法变得越来越重要时,与SharePoint的代码工作,因为大多数的对象通常的任务,将自定义的行为,就SPList类型的例子,都与修改,从而否定可能继承一个密封的访问装饰。 这是最明显时,您正在使用,模拟对象以外的(即TypeMock)某些框架需要一个密封的类和一个默认的构造函数。

相对于提供的方法定义在类的内部,推广方法就是定义一个协会,并在一个单独的静态的部分类支持类中包含构造(即它必须存在,在当前范围内命名空间)。 这种方法本身调用使用实例方法的语法,允许一些代码级熟悉结构。 虽然该方法是静态的,它可以说是只有在实例的参数定义。 从本质上讲,一个扩展方法将使注入到另一个类的方法,因此它被声明为如果它是它的一部分。

为了减少因含糊不清的方法扩展方法只由该方法的名称定义,重要的是考虑到适当的命名约定(事实上,如果签名是扩展将被忽略一样!)。 此外,在SharePoint将扩展的类型,当然受作为被微软公布的空气污染指数的变动。 因此,当空气污染指数的变化,有可能不是向后兼容的理想水平。

对于扩展方法的语法很简单(重要的是要注意到,虽然VB.NET需要扩展属性定义,C#不。C#中,但我们不得不创建一个对象的副本/返回值,所以唇上出来!)。

C#中:
  1. Extensions 公共静态 扩展
  2. this Type type ) 公共静态类型为接收方 类型的类型
  3. / /让我们的东西去!

你可以看到,在静态扩展类的接收方方法都有其唯一的参数与关键字修饰符装饰,以显示类型的这种方法会延长。 所以,当编写扩展方法扩展SPList类(不带任何补充参数)例如,我们的类将是这样的:

C#中:
  1. Extensions 公共静态 扩展
  2. this SPList list ) 公共静态类型为接收方 SPList清单
  3. / /让我们的东西去!

但是,这不会多,所以让我们采取更加务实的例子。

在下面,我假设,在一个应用程序,SPList对象,我会要经常重新排序依次为当前实例SPListItem收集修改日期,然后取出最后5个项目。

在HarvestLastFive,值得注意的是,我首先指定类型的目标使用与SPList键入此关键字。 下面,我建立一个SPList.Items,然后使用LINQ的OrderByDescendingSPBuiltInFieldId.Modified财产相结合的方法来处理SPListItemCollection订货。 最后, 返回了修改后的集合中的第一个5个项目。 如果你只是想重新排序(1我使用的扩展加强日常使用操作支持LINQ的收集等修饰符),你只想取出各种声明。

C#中:
  1. Extensions 公共静态 扩展
  2. this SPList typeToTarget ) 公共静态 IEnumerable的<SPListItem> HarvestLastFive( SPList typeToTarget)
  3. 尝试
  4. SPListItemCollection收集= typeToTarget。 物品 ;
  5. x => x [ SPBuiltInFieldId. Modified ] ) . Take ( 5 ) ;无功finalCollection = tempCollection。OrderByDescending(x =“x [SPBuiltInFieldId。 修改 ])。 (5);
  6. 返回 finalCollection;
  7. Exception exception ) 捕获 异常除外
  8. 返回null;

你可以看到在扩展类的成员,该HarvestLastFive方法具有不同的图标(小向下箭头),说明作为一个扩展的方法了。

extensionInVsNet Writing Extension Methods for SharePoint

在类中使用该方法对analgous该类型提供的其他方法。 例如,HarvestLastFive方法采用的形式:

C#中:
  1. 公共静态无效 TestingExtensionMethod()
  2. . Lists [ "My List" ] ; SPList列表= SPContext。 电流网络名单 [“我的名单”];
  3. ; VAR的收集=名单。HarvestLastFive();
  4. / /做你想做的!

在Visual Studio中,这种方法就指出,作为与前缀(扩展)工具提示扩展方法。

extensionUsed Writing Extension Methods for SharePoint

这应该给你足够的扩展方法获得持续。 我将我的共同张贴扩展方法,我与SharePoint使用不久,因为这本来是一个介绍一些。

  • 分享/书签

4评论»

  1. [...]这个职位,也因为人们表示,他们需要更多的可重复使用的扩展方法(比这里)的例子,到SharePoint挖。 暴君! 当我做了代码审查,到了SharePoint日历的部分,我发现这个问题上拿出一些被窃听。 当传递到SPUtility.FormatDate日期参数会期望它会在星期六,将是我在特定情况下,以及我会假设别人,是不准确的,因为它被存储在本地时间。 这可以克服使用由SPWeb.RegionalSettings.TimeZone类,提供的方法,允许适当的分析就SPWeb对象出现,以支持适当的转换。 [...]

    通过共享点住房» Blog存档» Pingback 下次当使用SPUtility.FormatDate为UTC(扩展方法) - 2008年9月29日@ 上午11时17

  2. [...] Interesante危象日亚当Buenz索夫雷为construir梅托多斯日延长段SharePoint实现。 [...]

    WSS 3.0中和苔藓Pingback:Recopilatorio日enlaces interesantes(二十二)! «激情葡萄牙拉工艺技术... - 2008年11月4号@ 上午08点51分

  3. [...]到这是一个步骤进一步利用技术,亚当Buenz在写作有关的SharePoint扩展方法是在SPList类等一样纳入博客:[...]

    Pingback的iSea(仅适用于iPod和iTouch的用户) - 2009年2月1日@ 下午12时57分

  4. [...]方法是将通过编写扩展方法SPList对象。 这是这里描述,亚当Buenz许多感谢发布2009年10月9号,下午4点20分由纳丁Storandt提起下:贤,[...]

    SPList Pingback 没有默认URL属性-纳丁的岗位- developers.de - 2009年10月9日@ 上午07时35分

RSS饲料对这个职位。 引用网址 评论

发表评论