Na het upgraden van mijn web-app van .Net 3.5 naar .Net4.0, zijn de regels voor beveiligingstransparantie mislukt

Na het upgraden van mijn web-app van .Net 3.5 naar .Net4.0, zijn de regels voor beveiligingstransparantie mislukt.

enter image description here

Ik heb er nog nooit van gehoord of het in mijn project verwerkt. Heeft iemand enig idee wat dit kan zijn?

2
beeld niet getoond ?? wat is de fout ?? Poging tot toegang tot methode System.Management.Instrumentation.InstrumentedAttribute..cto & zwnj; r (System.String) die de regels voor de beveiliging van de beveiliging overtreden, is mislukt. ?
toegevoegd de auteur Kiquenet, de bron

1 antwoord

Van Microsoft's kennisbank KB2635463 :

Oorzaak
  Dit probleem treedt op omdat de klasse System.Web.UI.ScriptManager   wordt eerst geïnstantieerd, het bouwt een cache van methode-informatie voor   klassen in assembly's die al in de applicatie zijn geladen. Wanneer het probeert   om de constructor van de InstrumentedAttribute de uitzondering te onderzoeken   wordt gegooid en niet afgehandeld.

     

Resolution
  Om dit probleem op een betrouwbare manier te omzeilen, dient u een instantie van   ScriptManager op een moment tijdens het opstarten van de applicatie voorafgaand aan de   eerste verzoek dat feitelijk wordt uitgevoerd, maar na de assembly die dat wel heeft   het InstrumentedAttribute is geladen.

     

Voeg bijvoorbeeld in global.asax een nieuwe code toe aan Application_Start:

  private void Application_Start (HttpApplication-toepassing)
{
    als (applicationStartupComplete) terugkeert;
    proberen
    {
        object osm = nieuwe System.Web.UI.ScriptManager ();
    }
    vangst (Uitzondering)
    {}
}
 

Bovendien onthult een bericht op de asp.net-forums dit antwoord van een Microsoft-medewerker:

We hebben een combinatie van problemen gezien die dit kunnen veroorzaken:

     
    

1) Het     webserver heeft het vertrouwensniveau minder dan "Volledig" ingesteld op het apparaat     web.config ( ref )

         

2) De webserver heeft geen AJAX-bestanden (System.Web.Extensions)     geïnstalleerd in de GAC.

  
     

Oplossing 1: stel het vertrouwensniveau in op 'Vol' in het apparaatniveau web.config

     

Oplossing 2: AJAX-bestanden installeren in de GAC

     

Als het vernieuwen het probleem oplost, is het misschien een probleem met het laden van de timing   de uitbreidingen. Waarschijnlijk zal het oplossen als u installeert in de GAC   het.

1
toegevoegd
Die oplossing is beter dan deze oplossing: support.microsoft.com/kb/2635463 ??
toegevoegd de auteur Kiquenet, de bron
Wat is de variabele applicationStartupComplete? een volledige broncode met applicationStartupComplete?
toegevoegd de auteur Kiquenet, de bron
@Kiquenet sinds mijn antwoord van een Microsoft-medewerker was, zou ik gaan voor de officiële Microsoft-oplossing. Ik zal het opnemen in mijn antwoord.
toegevoegd de auteur sshow, de bron