资源管理器异常,没有解决方案似乎工作

时间:2017-01-09 20:26:54

标签: c# embedded-resource resourcemanager

尝试使用资源管理器从项目中的资源获取字符串,我不断收到以下异常:

  

mscorlib.dll中发生了类型为system.Resources.MissingManifestResourceException的未处理异常。

所以我决定创建一个控制台应用程序来测试它,我仍然遇到同样的问题,我尝试了各种解决方案并始终得到相同的异常。

继承我的代码:

using System;
using System.Reflection;
using System.Resources;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            ResourceManager rm = new ResourceManager("Resource1", Assembly.GetExecutingAssembly());
            string someString = rm.GetString("test");

            Console.ReadKey();
        }
    }
}

My Resources file My solution structure

3 个答案:

答案 0 :(得分:1)

您需要包含资源的命名空间,请尝试

ResourceManager rm = 
   new ResourceManager("ConsoleApplication1.Resource1", Assembly.GetExecutingAssembly());

我更喜欢使用像这样的类型信息

 ResourceManager rm = new ResourceManager(typeof(ConsoleApplication1.Resource1));

这是关于使用ResourceManager的一个很棒的write-up

答案 1 :(得分:0)

您必须完全限定资源名称:

ResourceManager manager = new ResourceManager("ConsoleApplication1.Resource1", Assembly.GetExecutingAssembly());

答案 2 :(得分:0)

Quantic提供的答案为我工作,感谢Quantic!

string someString = ConsoleApplication1.Resources.Resource1.test;