18

我正在开发一个用 C# (asp.net) 构建的大型 Web 应用程序。我有一个简单的 aspx 页面,它为客户端浏览器提供本地化字符串,以便在 javascript 控件中使用。要获取字符串,我执行以下操作:

ResourceManager _resources = new ResourceManager(_pathname, typeof(ARM).Assembly);
ResourceSet rs = _resources.GetResourceSet(culture, false, false);

//loop through rs and write the keys & values out to the client in plaintext

这一切都很好,除了在清理/构建或重建之后立即对页面的第一个请求(如果我只是进行一些更改,然后构建,它工作正常)。因此,在第一个请求中,当我尝试迭代 ResourceSet 时,我得到了一个空引用异常。但是,如果我在出现错误后刷新页面,那么从那时起它就可以正常工作了。

有谁知道为什么会发生这种情况?

4

1 回答 1

50

GetResourceSet 方法的第二个参数“createIfNotExist”必须为真,这告诉 ResourceManager 如果尚未加载 ResourceSet,则加载该 ResourceSet。

ResourceSet rs = _resources.GetResourceSet(culture, true, false);
于 2009-12-28T18:53:24.643 回答