为什么ResourceManager.GetResourceSet在生成后的第一个请求返回null

2019-09-02 08:45发布

我正在建在C#(asp.net)大十岁上下的Web应用程序。 我有一个用于本地化的字符串为在JavaScript控件使用客户端浏览器一个简单的aspx页面。 要获取字符串,我做到以下几点:

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。 如果我刷新页面错误后,但是,它工作正常,从此。

有谁知道为什么会发生?

Answer 1:

该方法GetResourceSet必须是真实的,告诉的ResourceManager加载的ResourceSet如果没有加载的第二个参数“createIfNotExist”。

ResourceSet rs = _resources.GetResourceSet(culture, true, false);


文章来源: Why does ResourceManager.GetResourceSet return null on the first request after a build? (C#)