Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 应用程序代码中类的全局资源_C#_Asp.net_App Code - Fatal编程技术网

C# 应用程序代码中类的全局资源

C# 应用程序代码中类的全局资源,c#,asp.net,app-code,C#,Asp.net,App Code,我已经将我的一个类移动到App_Code文件夹(和命名空间),在这个类中我有一个对全局资源的引用: using Res = myProjectName.App_GlobalResources.Validation; 在我把这个类移到App_代码文件夹之前,一切都正常。现在我得到一个运行时错误,指出: CS0122: 'myProjectName.App_GlobalResources.Validation' is inaccessible due to its protection level

我已经将我的一个类移动到App_Code文件夹(和命名空间),在这个类中我有一个对全局资源的引用:

using Res = myProjectName.App_GlobalResources.Validation;
在我把这个类移到App_代码文件夹之前,一切都正常。现在我得到一个运行时错误,指出:

CS0122: 'myProjectName.App_GlobalResources.Validation' is inaccessible due to
its protection level
如果我进入Validation.resx(Validation.designer.cs)的设计器代码,并将
内部类验证
更改为public(
公共类验证
),那么它可以正常工作

为什么我不能从App_Code文件夹中正常访问此文件

是因为App_代码和App_GlobalResources内容是动态编译的,并且在运行时,App_代码是先编译的,而我的验证Resx还没有编译吗


谢谢您的回答。

您还可以将资源文件属性中的自定义工具更改为“PublicResXFileCodeGenerator”

您可以查看一下。谢谢Darin。实际上,我继续手动将这个特定resource.cs文件的“internal”替换为“public”,从而解决了这个问题。我想这和这个软件的功能是一样的。