SharePoint 2010 - 无法显示或导入此页上的 Web 部件或 Web 窗体控件.该类型未注册为安全类型



我一直被困在此错误上,自过去几天以来无法解决它。我已经用谷歌搜索了所有我能搜索的内容,但似乎没有一个解决方案对我有用。我将完成我所做的所有步骤,希望有人能够发现错误。另外,我已经使用 SharePoint 开发一段时间了,但在某些部分仍然是初学者。

我已经在我的 SharePoint 中创建了我的网站,并为其创建了一个新的网站集。 我在 Powershell 中使用以下命令部署了我的 Web 部件:

Update-SPSolution -Identity xxxxx.wsp -GACDeployment -LiteralPath "C:\Users\username\Desktop\xxxxx.wsp">

然后转到我创建的网站并添加 Web 部件。这提醒我以下消息。

我尝试了许多解决方案,包括,

  1. 我检查了我的 Web 部件是否在 web.config 或根网站中声明为安全。它看起来像这样:

<SafeControl Assembly="xxxxx, Version=1.0.0.0, Culture=neutral, PublicKeyToken=4a87d6fcb45f5672" Namespace="xxxxx.xxx" TypeName="*" Safe="True" SafeAgainstScript="False" />

  1. 我的类名 SharePointProject1.WebPartName 声明为公共。
  2. 我已使用 -GACDeployment 将 Web 部件部署到 GAC
  3. 命名空间名称
  4. 与我的项目中定义的命名空间名称相同。

我还在事件查看器中检查了我的应用程序日志,但那里也没有提到任何错误。

在所有这些之后,我有一种感觉,也许这可能是我的用户配置文件服务创建的问题,尽管我对 SharePoint 的这一方面不是很熟悉。

我按照这两个教程创建了用户配置文件服务和"我的网站": http://sharepointgeorge.com/2010/configuring-the-user-profile-service-in-sharepoint-2010/http://www.boostsolutions.com/blog/how-to-create-configure-my-sites-in-sharepoint-2010/

我认为您采取的步骤是正确的,应该可以工作。 Cna你再试一件事。你能去删除类型名称的 * 符号吗?

  1. 转到您的项目,然后在 Package.package 中
  2. 转到"高级"选项卡,然后单击"添加"以添加现有程序集
  3. 点击 ...在"源路径"中,选择项目 DLL 文件
  4. 选择"部署目标"作为 Gobal 程序集缓存
  5. 在"安全控制"部分下,为程序集提供
  6. 命名空间,在"程序集"下提供完整的 dll 名称

然后尝试再次部署

让我知道结果。

编辑:
根据评论 使用此命令部署解决方案 "stsadm -o deploysolution -name xxxxx.wsp -immediate -allowGacDeployment -force -allcontenturls">

相关内容

最新更新