在Resx文件和文件夹中存储资源的区别

3

我知道我可以将资源添加到Resources.resx文件中,然后像properties.resources.MyFile.dat一样使用它。
但是,如果我只是将文件添加到资源文件夹中(将其设置为嵌入式),并将其复制到输出目录以始终复制并访问它,那么有什么区别呢?
另外,这是添加资源的另一种方法吗?

1个回答

1

有两个核心区别:

  1. 当您的资源在 .resources 文件中时,它们通常会被嵌入到您的程序集(即 .exe.dll 文件)中,而不是拥有自己的文件。
  2. 当资源嵌入到您的程序集中时,如果需要,您可以依赖 .Net Framework 的本地化基础设施来获得其本地化版本。

总之:

  • 对于需要本地化的资源,请嵌入。
  • 对于需要从程序中更改的资源,请使用独立文件。
  • 对于其他所有内容,只是品味问题。

谢谢。当我不使用资源文件时,我的文件会与我的程序集一起外部存放,对吗? - JeffreyZ.
准确地说:.resource 中的所有内容都会出现在程序集中;您设置为 Copy to output 的文件只是被复制到输出目录。所有其他差异都只是这个事实的结果。 - Edurne Pascual

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接