重命名 Web 部件的命名空间 (或, 其中一个原因"Web 部件或 Web 表单控件在此页无法显示或导入)”

我一直在努力让我 dev 排骨回来并为此目的, 具有下列位爱好项目的工作:

  • 从 SharePoint 的文本筛选器 web 部件框的接收站点或站点集合 URL 的连接的 web 部件.
  • 此 web 部件查找所有的信息,选定的站点, 生成 XML 包并将其传给另一个 WP 页面上 (通过连接).
  • 3rd web 部件接收该 XML 并不会一些 XSL 转换的东西.

我想要重命名的名称空间的所有位都为"Nivlag",我打,出现以下错误当我部署到 web 部件  我的测试环境:

无法显示或导入 Web 部件或 Web 表单控件在此页面上。  找不到类型或它未注册为安全.

这是一个初学者的问题,但我以为我会记下一份关于这说明反正。  我引起错误,当我用鼠标右键单击默认的名称空间 (其中拖欠的项目的名称), 所选的重构,然后重命名像这样:

image

那做了重命名在项目中的地方一群中的东西, 但它并不足够。  您还需要进行几个其他的调整:

1. 手动打开和编辑文件, ""ShaerPointProjectItem.spdata. 一个 XML 文件,已 <SafeControls> 第节。  命名空间重命名功能还不知道出于什么原因此文件, 所以你需要手动更新那里的 Namespace.

2. 手动编辑.webpart 文件。  无论任何原因, Visual Studio 不会要么改变此引用。  更改"<类型>"节点以反映您已更改命名空间那里.

3. 最后, 取决于你如何重构命名空间更改, visual studio 可能还更新引用在这里你.ascx 文件的字符串:

私人 const 字符串 _ascxPath = @"~/_CONTROLTEMPLATES......

你可能需要改变这回。  你会因为你会得到一个错误与下面类似的当你试着将 web 部件添加到 web 部件区域上  页:

中的服务器错误 ' /’ 应用程序.


文件 ' /_CONTROLTEMPLATES/Nivlag/VisualWebPart1/VisualWebPart1UserControl.ascx’ 不存在.

说明: 执行当前 web 请求期间发生了未处理的异常. 请检查堆栈跟踪有关该错误以及代码中的出处的详细信息.
异常的详细信息: System.Web.HttpException: 文件 ' /_CONTROLTEMPLATES/Nivlag/VisualWebPart1/VisualWebPart1UserControl.ascx’ 不存在.
源错误:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

 

那里修复的引用和你应该好好地去.

4. 最后, 实际的 ASCX 文件仍有参考 (对我来说) 到老的原始命名空间 (重构/重命名功能 didn't 修复此问题).  请尝试将 web 部件添加到页面和收到下面的消息时,你就知道有关此错误:

中的服务器错误 ' /’ 应用程序.


分析器错误

说明: 在此请求提供服务所需资源的分析过程中出现的错误. 请查看下面的特定分析错误的详细信息,并适当地修改您的源代码文件.
分析器错误消息: 未能加载类型 'RenameNameSpace.VisualWebPart1.VisualWebPart1UserControl'.
源错误:

线 6:  <%@ Import Namespace="Microsoft.SharePoint" %> 
线 7:  <%登记册 Tagprefix @ ="web 部件页" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, 版本 = 14.0.0.0, 文化 = 中性, Publickeytoken) = 71e9bce111e9429c" %>
线 8:  <%@ 控制语言 ="C#" AutoEventWireup ="true" CodeBehind="VisualWebPart1UserControl.ascx.cs" Inherits="RenameNameSpace.VisualWebPart1.VisualWebPart1UserControl" %>

源文件: /_CONTROLTEMPLATES/RenameNameSpace/VisualWebPart1/VisualWebPart1UserControl.ascx    线: 8


版本信息: Microsoft.NET Framework 版本:2.0.50727.4927; ASP.NET 版本:2.0.50727.4927

直接编辑的.ascx 文件和修复破碎的命名空间.

在这一点, 我终于有一个生活在我选择的命名空间中的 web 部件.

</结束>

订阅我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

一个念头在“重命名 Web 部件的命名空间 (或, 其中一个原因"Web 部件或 Web 表单控件在此页无法显示或导入)”

  1. pingback的: 提到重命名 Web 部分命名空间的推 (或, 其中一个原因"Web 部件或 Web 表单控件在此页无法显示或导入)"«保罗 · 高尔文 SharePoint 空间 -- Topsy.com

留言

您的电子邮件地址不会被公开. 必需的地方已做标记 *