Web deel naamruimten hernoemen (Of, Een reden voor "een webonderdeel of webformulierbesturingselement op deze pagina kan niet worden weergegeven of ingevoerd)”

Ik heb gewerkt om mijn karbonades dev terug en daartoe, werken op een hobby project dat de volgende bits heeft:

  • Verbonden webonderdeel die een site of site-URL op van een out of the box SharePoint tekstfilter webonderdeel ontvangt.
  • Dit webonderdeel opgezocht alle info over de de geselecteerde site, genereert een XML-pakket en het uit handen naar een andere WP op de pagina (via verbindingen).
  • 3RD webonderdeel ontvangt de XML en doet sommige XSL transformeren spullen.

Ik wilde de naam wijzigen de naamruimte van alle bits te "Nivlag" en ik was geraakt omhoog met de volgende fout wanneer ik het webonderdeel ingezet  mijn testomgeving:

Een webonderdeel of webformulierbesturingselement op deze pagina kan niet worden weergegeven of ingevoerd.  Het type kan niet worden gevonden of het is niet geregistreerd als veilig.

Dit is een beginner's probleem maar ik dacht dat ik zou een opmerking op dit toch noteren.  Ik de fout heeft veroorzaakt, wanneer ik met de rechtermuisknop op de standaard naamruimte geklikt (die aan het projectnaam in gebreke gebleven), geselecteerde Refactor en vervolgens naam wijzigen zoals zo:

image

Dat dingen in een bos van plaatsen in de project naam wijzigen, maar het is niet genoeg.  Ook moet u verscheidene andere aanpassingen:

1. Handmatig openen en bewerken van een bestand, "ShaerPointProjectItem.spdata". Dat een XML-bestand dat heeft een <SafeControls> sectie.  De functie naam wijzigen naamruimte is zich bewust van dit bestand voor welke reden dan ook niet, Zo moet u handmatig bijwerken van de Namespace er.

2. Het bestand .webpart handmatig bewerken.  Voor welke reden dan ook, Visual Studio wijzigen niet hetzij deze verwijzing.  Verandering de "<type>"knooppunt aan uw gewijzigde naamruimte er.

3. Tot slot, afhankelijk van hoe u refactored de naamruimte wijzigen, Visual studio kan ook hebben bijgewerkt de tekenreeks die verwijst naar uw .ascx bestand hier:

Private const tekenreeks _ascxPath = @ "~/_CONTROLTEMPLATES......

U wellicht om dat te veranderen terug.  U zult omdat u een fout de volgende strekking krijgt wanneer u probeert en het webonderdeel toevoegen aan een webonderdeelzone op een  pagina:

Serverfout in ' /’ Toepassing.


Het bestand ' /_CONTROLTEMPLATES/Nivlag/VisualWebPart1/VisualWebPart1UserControl.ascx’ bestaat niet.

Beschrijving: Er is een onverwerkte uitzondering opgetreden tijdens de uitvoering van de huidige webaanvraag. Controleer de stacktrace voor meer informatie over de fout en waar het is ontstaan in de code.
Uitzondering Details: System.Web.HttpException: Het bestand ' /_CONTROLTEMPLATES/Nivlag/VisualWebPart1/VisualWebPart1UserControl.ascx’ bestaat niet.
Bronfout:

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.

 

De verwijzing er vast en je moet goed om te gaan.

4. Tot slot, het werkelijke bestand ASCX had nog steeds een verwijzing (voor mij) de oude originele naamruimte (de functie refactor/naam wijzigen positiebepaling niet zulks).  U zult weten over deze fout wanneer u probeert en het webonderdeel aan de pagina toevoegen en krijg het volgende bericht:

Serverfout in ' /’ Toepassing.


Parser fout

Beschrijving: Er is een fout opgetreden tijdens het parseren van een resource vereist om dit verzoek dienst. De volgende specifieke parse foutdetails Bekijk en wijzig uw bronbestand op de juiste wijze.
Parserfoutbericht: Type 'RenameNameSpace.VisualWebPart1.VisualWebPart1UserControl' kan niet worden geladen.
Bronfout:

Lijn 6:  <%@ Import Namespace="Microsoft.SharePoint" %> 
Lijn 7:  <%@ Register Tagprefix = "WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Versie = 14.0.0.0, Cultuur = neutraal, PublicKeyToken = 71e9bce111e9429c" %>
Lijn 8:  <%@ Control Language = "C#" AutoEventWireup = "true" CodeBehind="VisualWebPart1UserControl.ascx.cs" Inherits="RenameNameSpace.VisualWebPart1.VisualWebPart1UserControl" %>

Bronbestand: /_CONTROLTEMPLATES/RenameNameSpace/VisualWebPart1/VisualWebPart1UserControl.ascx    Lijn: 8


Versie-informatie: Microsoft..NET Framework versie:2.0.50727.4927; ASP.NET versie:2.0.50727.4927

Het .ascx-bestand rechtstreeks bewerken en op te lossen de gebroken naamruimte.

Op dit punt, Had ik eindelijk een webonderdeel in de naamruimte van het kiezen van mijn leven.

</einde>

Abonneren op mijn blog.

Volg mij op Twitter op http://www.twitter.com/pagalvin

Een gedachte over "Web deel naamruimten hernoemen (Of, Een reden voor "een webonderdeel of webformulierbesturingselement op deze pagina kan niet worden weergegeven of ingevoerd)”

  1. Pingback: Tweets dat hernoemen Web deel naamruimten noemen (Of, Een reden voor "een webonderdeel of webformulierbesturingselement op deze pagina kan niet worden weergegeven of ingevoerd)"«Paul Galvin van SharePoint ruimte -- Topsy.com

Laat een antwoord achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *