显示带有标签的帖子 清单. 显示所有帖子
显示带有标签的帖子 清单. 显示所有帖子

2007年3月2日,星期五

使用VSeWSS创建列表

这是本系列的第一篇文章,旨在说明使用双色球推荐一注功能创建MOSS网站的过程。有关完整系列的内容,请参见 我的介绍.

在这里,我们将研究创建双色球推荐一注列表。对于双色球推荐一注如此简单和核心的内容,很难将它们创建为功能。幸运的是,用于WSS的Visual Studio扩展极大地简化了该过程。如果您还没有遇到这种情况,我建议您尝试一下-WseWSS对于某些双色球推荐一注开发方案基本上是一个巨大的帮助。以下文章是有良好背景的:

简而言之,在VSeWSS中创建列表的过程如下:

  1. 创建一个空白的Visual Studio项目。 N.B.如果您实际上是在创建双色球推荐一注网站定义,则应选择“团队网站定义”或“空白网站定义”,因为WSeWSS将为您设置配置代码,该代码将在根据该定义创建网站时执行。

  2. 在“项目”菜单上选择“添加新项”,然后从“ 双色球推荐一注”部分中选择“列表定义”。

  3. 通常,您应该从下拉列表中选择“自定义列表”作为基本列表定义。如果您实际上是在扩展该列表类型并希望保留原始的列,请仅选择其他选择。假设除了列表模板之外,您还想创建实际的列表(稍后将对此进行详细介绍),请选中“创建此列表的实例”框。另请注意“使用事件接收器添加”选项-这将设置可用于处理列表中事件的代码,例如,在添加/编辑/删除列表项时。



  4. 在对话框中单击“确定”后,适当命名您的列表。我的建议是避免空格或其他可能在某处编码的字符-该列表将具有一个显示名称,您可以自由使用它。

    WSeWSS现在已经在VS项目中创建了几个文件。




    我们可以看到以下内容:


    • 一些aspx文件,用户将用来处理列表的页面。请注意,如果您想偏离标准行为,可以对它们进行自定义。

    • 实例.xml-这是要编辑以将初始数据添加到列表中的文件。由于此文件会自动链接到适当的架构,因此编辑起来非常简单,因为VS会在您键入时告诉您有效的节点(如下所示)。

    • 两个.cs文件,其中包含事件处理程序的方法存根。这些已经准备好,您可以执行了。

    • schema.xml-它包含CAML,它指示列表存储哪些内容类型,任何自定义视图,还引用了我们提到的.aspx文件
  5. 如果要将默认项添加到列表中(如果创建了它的实例,则可能要这样做),则可以编辑instance.xml文件。这很简单,因为VSeWSS已将instance.xml连接到适当的XML模式(C:\ Program Files \ Common Files \ Microsoft Shared \ Web服务器扩展\ 12 \ TEMPLATE \ XML \ wss.xsd),然后您可以VS的Intellisense的优势,该优势是在您键入时从架构推断的:



  6. 进行任何自定义(例如,编辑instance.xml以添加列表项)后,转到VS项目的属性并检查“ 双色球推荐一注解决方案”选项卡。在这里,您将看到VSeWSS为每个列表生成了两个功能。一个用于列表实例,另一个用于列表模板。用户可以使用它使用您定义的列在网站上创建新列表。

  7. 转到项目属性上的“调试”选项卡,然后输入双色球推荐一注开发站点的URL。解决方案将部署到此URL,因此输入此值很重要。

  8. 按F5键,WSeWSS将创建并部署解决方案。请注意,.wsp文件是在项目的bin \ Debug或bin \ Release目录中生成的。密切注意左下方的VS状态栏,以监视进度。如果部署成功,您的列表现在应该在“调试”选项卡上指定的站点中可见。


对于手工创建双色球推荐一注解决方案/功能的任何人,VSeWSS都提供了一种引人注目的替代方案。不要弄乱ddf文件和makecab.exe,只需按F5键即可。但是,有一些烦恼:

  • 由于VSeWSS在每次部署时都会重写feature.xml文件,因此无法自定义此文件以添加无法在项目属性的“ 双色球推荐一注 Solutions”区域中输入的内容。主要的示例是功能接收器类,用于指定在激活/停用功能时应该运行的代码(如果您想在此处执行某些操作)。当然,您可以在开发周期结束时编辑文件,但是您知道该死的总是会有进一步的调整,然后将XML重新粘贴到feature.xml中变得很烦人。

  • 虚拟服务在每个部署上重新创建功能GUID。这对开发非常有用,但是这意味着您不能具有其他功能 功能依赖 在您的清单功能上。如果您尝试创建功能部件层次结构或合理化功能部件,以便激活一个功能部件将激活解决方案中给定部分的所有必需功能部件,则可能会很痛苦。

不过,您现在可以为您添加的每个列表提供一个功能。好吧,实际上,您为添加的每个列表都有2个功能。为什么?因为一个是列表 实例 另一个是列表 模板。请注意,如果您不希望用户能够从此模板中创建列表,则可以停用列表模板的功能。


本系列的下一步-如何创建从列表中获取其数据的站点列(字段)。