Sharepoint ~masterurl/default.master不存在

Sharepoint ~masterurl/default.master不存在,sharepoint,master-pages,Sharepoint,Master Pages,我尝试创建一个自定义Web部件页。我尝试了一本书的例子,开头是: <%@ Page MasterPageFile="~masterurl/default.master" Inherits="Microsoft.SharePoint.WebPartPages.WebPartPage, Microsoft.SharePoint, [full 4-part assembly name]" meta:progid="SharePoint.WebPartPage.Document

我尝试创建一个自定义Web部件页。我尝试了一本书的例子,开头是:

<%@ Page MasterPageFile="~masterurl/default.master"
Inherits="Microsoft.SharePoint.WebPartPages.WebPartPage,
          Microsoft.SharePoint, [full 4-part assembly name]"
meta:progid="SharePoint.WebPartPage.Document" %>

……但没有结果。。。。 该页面已部署到_layouts文件夹中,但当我尝试从浏览器访问它时,会得到:“_layouts/~masterurl/default.master不存在”。 我做错了什么

提前谢谢你


解决了这个问题:再次阅读这本书,实际上我不必将页面添加到_layouts文件夹。谢谢你睁开我的眼睛:)。书中对所有步骤都做了很好的解释,但我没有集中足够的注意力。是的,一页下来….

您是在手工编写web部件页吗?这通常是通过在SharePoint网站内创建文档库,然后向其中添加web部件页来自动完成的。此外,我不确定Page指令是否有效。在查找(自动生成的)web部件页的源代码时,我

<%@ Reference VirtualPath="~masterurl/custom.master" %>
但是,如果可能的话,我再次鼓励您使用自动创建web部件页面。

您首先需要确定您的页面是将成为网站页面(意味着它将位于文档库中还是直接位于web中),还是将成为应用程序页面。如果将页面部署到_layouts文件夹,则表示这是一个应用程序页面

如果您查看其他版面页面,它们的格式是

<%@ Page language="C#" MasterPageFile="/_layouts/application.master"      Inherits="..." %>

您可以将application.master更改为其他文件


这只是实现这一点的一种方法,但是我相信还有其他选项,这取决于您希望母版页文件的动态程度。

Jon是对的,您不能在_layouts文件夹中创建web部件页。。他们没有设置web部件基础结构。您只能在那里有应用程序页面。
我肯定你的书没有告诉你把web部件页面放在_layouts文件夹中?

它只是不喜欢
~masterurl
部分


我使用了
~/\u catalogs/masterpage/filename.master
,效果非常好。不是动态的,但它在我们的环境中运行良好。

代码隐藏类必须派生自WebPartPage,而不是LayoutsPageBase。
这对我有用

在第3章WSS 3.0内部的书中,有一个副标题(“设计Web部件页面”)和一个示例。这就是我想要做的,由于一些未知的原因,我失败了。