如何在不使用 _layouts 目录的情况下配置自定义页面?

Posted

技术标签:

【中文标题】如何在不使用 _layouts 目录的情况下配置自定义页面?【英文标题】:How to provision a custom page without using the _layouts directory? 【发布时间】:2010-10-11 15:01:48 【问题描述】:

我需要提供一个自定义 aspx 页面,该页面会做一些工作,然后重定向到另一个页面。使用 _layouts 页面,AKA 应用程序页面将不起作用,因为我只希望该页面可供一个网站集访问。

我查看了使用博客文章中的模式 #4 Application Development on MOSS 2007 and WSS V3。感觉很hacky,它要求你删除DLL。将其放入网站集的 bin 中,并通过 SP Designer 上传文件。

我希望此页面成为包含在我的站点定义中或装订到现有站点定义中的功能。我想我可以使用功能接收器将文件部署到页面 SP 列表中。博客文章中的一位 cmets 说了这么多:

请原谅我对此的无知,也许我是 完全没有抓住重点,但是 部署你的会不会更容易 以编程方式自定义页面 将它们添加到页面列表中?

基本上,我有一个简单的 .aspx 页面 带有用户控件。我通过部署它 这个方法。

如何在不使用 _layouts 页面的情况下配置自定义页面?

我想另一种选择是继续使用 _layouts 页面,但请确保引用者正确。

【问题讨论】:

【参考方案1】:

除了应用程序页面,您还可以创建站点页面。

网站页面本质上与应用程序页面相关,但它们驻留在不属于 _LAYOUTS 的网站中。

欢迎页面 (default.aspx) 是此类页面的一个示例。

与应用程序页面一样,可以在这些页面中进行代码隐藏(查看 AC 关于此主题的文章,Using ASP.NET 2.0 Code Behind Files in SharePoint v3 Sites

您可以阅读这篇关于应用程序页面和站点页面之间细微差别的文章:SharePoint Application and Site Pages - Part 1 of 2

您使用一项功能部署此自定义页面,在该功能中将文件指定为可幻影(查看 ACs 文章中的示例)。

【讨论】:

我知道这是可能的。 Andrew Connell 的帖子正是我想要的。

以上是关于如何在不使用 _layouts 目录的情况下配置自定义页面?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不使用“立即购买”按钮的情况下为自定义购物车集成 Paypal IPN

如何在不阻塞事件循环的情况下迭代大型列表

在不使用 Django 本身的情况下测试自定义 Django 中间件

如何在不重复导入***名称的情况下构造python包

如何在不更改链接结构的情况下使用 \ 转义字符 (、)、[、]、*、_、:[]()

如何在不重新编译的情况下配置我的 C# 项目? [复制]