2009-10-05 8 views
0

J'ai un site qui utilise un assembly séparé pour la journalisation. Cet assembly écrira dans le journal des événements toutes les erreurs qui sont lancées dans le code sur ma page ASPX. Pour une raison inconnue (et je dis au hasard parce que je n'ai pas trouvé les étapes exactes pour reproduire l'erreur) obtenir une erreur disant que l'accès est refusé:Accès refusé ASP.net Erreur

Impossible de charger le fichier ou l'assemblage 'Logging, Version = 1.0. 0.0, Culture = neutral, PublicKeyToken = 49d029f85976040e 'ou l'une de ses dépendances. L'accès est refusé.

L'ensemble est référencé en haut de ma page ASPX:

<%@ Assembly Name="Logging, Version=1.0.0.0, Culture=neutral, PublicKeyToken=49d029f85976040e" %> 

Si je redémarre IIS il effacera l'erreur. Mais il reviendra finalement. Donc, ce n'est pas une solution acceptable.

Des idées?

PS J'utilise ASP.net 2.0 en cours d'exécution sur Windows Server 2008 et IIS 7. sp1

+0

J'ai besoin de vous assurer: il ne fonctionne la plupart du temps? Vous voyez des erreurs dans le journal des événements maintenant et puis? –

+3

Aussi: avez-vous vu elmah? http://code.google.com/p/elmah/ –

Répondre

0

Je ne peux pas penser à une cause de ce genre d'erreur au hasard de ma propre expérience. En guise de solution de rechange, avez-vous essayé d'intercepter et d'enregistrer des erreurs dans l'événement Page_Error ou Application_Error à la place? Vous seriez alors en mesure de référencer votre assembly de journalisation à partir du code-behind au lieu du balisage, et ce serait probablement plus fiable.

1

Vous pouvez essayer de ne pas signer l'assembly en procédant de la sorte.

0

Avez-vous essayé accorder l'IIS utilisateur un accès complet au dossier C: \ Windows \ Microsoft.Net \ Framework (64) \ v (version) \ dossier Temporary ASP.NET Files?

J'ai eu des problèmes similaires en faisant cela. Si vous n'êtes pas sûr de l'utilisateur sous lequel IIS s'exécute, il suffit d'accéder au groupe 'Utilisateurs' pour voir si le problème disparaît.

(Vous pourriez être courir de risque de sécurité supplémentaire, mais si cela résout votre problème, vous pouvez chercher des moyens d'atténuer que ..)

Questions connexes