【问题标题】:What does the Access Modifier option actually do in a RESX file?访问修饰符选项在 RESX 文件中的实际作用是什么?
【发布时间】:2023-03-06 16:21:01
【问题描述】:

在修改 RESX 文件时,我注意到顶部工具栏中的“访问修改器”选项。

共有三种不同的选项:publicinternalno code generation。我猜这些决定了哪些应用程序可以访问这些资源文件,但我不确定这三个选项之间的区别是什么。

  1. 我假设 public 资源可以从解决方案中的任何项目访问。

  2. 我假设 internal 资源只能由定义资源的项目访问。

  3. 我不知道无代码生成是做什么的。

这三个选项究竟是什么意思?

【问题讨论】:

  • 在 resx 文件中,您会得到一个以资源文件命名的类,该类具有可以轻松访问 resx 文件中的资源的属性。访问修饰符是为了这个生成的类的可见性。或者在 3 的情况下,您将无法获得这样的课程,并且必须自己努力从 resx 中获取资源。比如创建资源管理器、加载资源文件、定位入口等。

标签: c# asp.net resx access-modifiers


【解决方案1】:

您关于 1 和 2 的假设是正确的。

尝试将在定义它的项目外部使用的资源项的访问修饰符从“公共”设置为“内部”,然后再次构建您的项目。您将收到类似于以下内容的编译器错误:

错误 CS0122:“资源”由于其保护级别而无法访问

  1. “无代码生成”表示未创建像“Resource.Designer.cs”这样的设计器文件:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-14
    • 2011-04-12
    • 2011-02-01
    • 2010-11-22
    • 2023-01-14
    • 2015-11-26
    相关资源
    最近更新 更多