Asp.net 在SharePoint web部件页中使用AspCompat

Asp.net 在SharePoint web部件页中使用AspCompat,asp.net,sharepoint,sharepoint-2007,Asp.net,Sharepoint,Sharepoint 2007,我正在创建需要使用单线程COM组件的SharePoint web部件。我发现,为了使这项工作正常,我需要将AspCompat=“true”指令添加到web部件所在的页面。问题是我似乎无法设置这样的页面 我通过常规浏览器界面创建了一个新的空白web部件页,然后使用SharePoint Designer向其中添加了AspCompat。但这会导致它变成非幽灵,而SafeMode解析器表示该指令是不允许的。然后我修改了空白Web部件页面模板以包含指令并创建了一个新的页面,但是得到了同样的错误。 我基本上

我正在创建需要使用单线程COM组件的SharePoint web部件。我发现,为了使这项工作正常,我需要将AspCompat=“true”指令添加到web部件所在的页面。问题是我似乎无法设置这样的页面

我通过常规浏览器界面创建了一个新的空白web部件页,然后使用SharePoint Designer向其中添加了AspCompat。但这会导致它变成非幽灵,而SafeMode解析器表示该指令是不允许的。然后我修改了空白Web部件页面模板以包含指令并创建了一个新的页面,但是得到了同样的错误。 我基本上需要在SharePoint网站中设置一个页面,该页面存储在文件系统中,具有该指令,并且可以包含我的web部件。如何创建这样一个页面?

我最近给出了一些说明,其中包括如何提供新的网站内容页面模板,您可以使用这些模板来承载web部件。我想这可能对你有用


在您的情况下,您的aspx页面模板将内置AspCompat指令。

根据Microsoft SharePoint developer support,在SharePoint网站中根本不可能使用AspCompat。SPPageParserFilter类不允许某些页面指令,它显然参与处理所有页面,甚至是文件系统中的页面。有关更多详细信息,请参阅。

您对另一个问题的回答似乎很有希望。我想我可以修改我的web部件的现有特性清单,以包含一个包含AspCompat的ASPX页面。当我进入包含特性元素的文件时,我可以添加另一个元素,但是在我添加了一个元素之后,VisualStudio在WSP视图中突然无法解析包解决方案。它给出的错误为“值”不能为空。参数名称:path2'。我是否需要在web部件中仅为ASPX页面创建新功能?好的,错误是由于未在元素中包含Path属性造成的。我最终创建了一个新的解决方案包,其中包含一个作为功能部署的模块,与您在其他回答中的建议类似。该解决方案安装正确,似乎把东西放在了正确的位置。我在Pages库中看到我的带有AspCompat的ASPX页面,但是,当我浏览到它时,仍然会收到一条消息,说不允许使用AspCompat指令。我将文件的内容类型设置为GhostableInLibrary。我知道它正在查看磁盘文件,因为如果我重命名它,我将无法再浏览到它。为什么该指令仍然存在问题?