Je souhaite remplacer une méthode de la classe System.Resources.ResourceManager dans mscorlib v4.Substitution de ResourceManager GetResourceFileName
Je souhaite remplacer la méthode GetResourceFileName comme ceci;
protected override string GetResourceFileName(CultureInfo culture) {
string resourceFileName = base.GetResourceFileName(culture);
return resourceFileName.Replace(".resources", ".resx");
}
Le problème est, à instancier une classe ResourceManager je dois utiliser la méthode statique CreateFileBasedResourceManager, qui renvoie une nouvelle instance de la ResourceManager. (parce que j'ai besoin du gestionnaire de ressources basé sur le fichier)
Comment puis-je remplacer cette méthode? J'ai également essayé d'appeler le constructeur privé CreateFileBasedResourceManager appels pour créer l'objet, mais je reçois cette exception (ne peut pas invoquer le constructeur privé avec réflexion?);
[SecurityException: Request failed.]
System.RuntimeMethodHandle.PerformSecurityCheck(Object obj, RuntimeMethodHandleInternal method, RuntimeType parent, UInt32 invocationFlags) +0
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +323
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +38
System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +35
System.Xml.Xsl.XsltOld.FuncExtension.Invoke(XsltContext xsltContext, Object[] args, XPathNavigator docContext) +164
MS.Internal.Xml.XPath.FunctionQuery.Evaluate(XPathNodeIterator nodeIterator) +430
Merci pour l'info, après avoir utilisé la classe Activator pour instancier l'objet avec le constructeur privé travaillé ... l'exception de sécurité provenait d'autre chose. – peter