从资源文件中获取DisplayName

我在App_GlobalResources文件夹中有特定于文化的资源文件。 现在我需要从这个资源文件中读取DisplayName属性的值。 我在用:

[Display(Name = "MerchantName", ResourceType = typeof(Resource))] public string Merchant { get; set; } 

但我收到以下错误:

无法检索属性“名称”,因为本地化失败。 类型“Resources.Resource”不是公共的,或者不包含名为“MerchantName”的公共静态字符串属性。

我该如何解决这个问题?

以下链接可以为您提供一些见解: 来自Resources的DisplayName属性?

在我的情况下,我不得不将我的资源的Access修饰符从Internal更改为Public。

Public_vs_Internal

默认情况下,所有资源都创建为内部。

 Check following: 1. Your resource file access modifier should be declared as PUBLIC 2. It contain a key - MerchantName [Display(ResourceType = typeof(Resource), Name = "MerchantName")] public string MerchantName{ get; set; } 

为了更好地理解,请参阅http://www.dotnetlibrary.com/Articles/GetArticles?articleId=20