如何创建默认GlobalResourceProvider的实例?

时间:2011-10-04 10:18:42

标签: c# .net asp.net localization webforms

我需要在ASP.NET中创建自定义LocalResourceProvider。看来我必须为此创建一个自定义ResourcePRoviderFactory。但是,这意味着从CreateGlobalResourceProvider返回IResourceProvider(null不起作用)。

我找不到框架默认的ResourceProvider是什么,所以我可以返回,所以我不必创建自己的。

(默认LocalResourceProvider的奖励积分,因为我需要更改的是virtualPath,因此能够创建默认的实例但通过我自己的传递会使事情变得更容易。)

1 个答案:

答案 0 :(得分:0)

找到解决方案。但这并不好:

// HACK: The default provider is internal, so we have to use reflection to create it, so we can steal it's behaviour.
string typeName = "System.Web.Compilation.ResXResourceProviderFactory, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a";
defaultFactory = (ResourceProviderFactory)Activator.CreateInstance(Type.GetType(typeName));