首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ResourceManager覆盖GetResourceFileName

ResourceManager覆盖GetResourceFileName
EN

Stack Overflow用户
提问于 2010-08-05 01:26:07
回答 1查看 1.7K关注 0票数 1

我想要重写mscorlib v4中System.Resources.ResourceManager类中的一个方法。

我想重写方法GetResourceFileName,如下所示;

代码语言:javascript
复制
    protected override string GetResourceFileName(CultureInfo culture) {
        string resourceFileName = base.GetResourceFileName(culture);
        return resourceFileName.Replace(".resources", ".resx");
    }

问题是,要实例化一个ResourceManager类,我必须使用静态方法CreateFileBasedResourceManager,该方法返回ResourceManager的一个新实例。(因为我需要基于资源的文件)

如何重写此方法?我还试图调用私有构造函数CreateFileBasedResourceManager调用来创建对象,但是我得到了这个异常(不能用反射调用私有构造函数吗?);

代码语言:javascript
复制
    [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
EN

回答 1

Stack Overflow用户

发布于 2010-08-05 01:34:24

创建您自己的资源提供程序并在您的app.config或web.config中引用它。可以在here中找到一个示例

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3408078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档