是否建议使用 .resx 文件在业务层类库中存储常见的字符串引用?我通常只看到这些被用于表示层。
最佳答案
一个选择是在您的解决方案中有一个单独的项目,其中包含整个解决方案的所有 resx 文件。然后您可以将其添加为对业务层的引用。在 Resources 项目中,您可以围绕 .net ResourceManager 类编写一个包装器,以返回您的 key 的资源值。类似以下内容:
public class ResourceService : IResourceService
{
public ResourceService() {}
public GetResourceValue(string resourceFileName, string resourceKey)
{
var resourceManager = new ResourceManager("Myresources", Assembly.Load("MyResourcesProjectName"));
return resourceManager.GetString(resourceKey);
}
}
然后您可以在业务层将其用作:
var resourceService = new ResourceService();
var resourceValue = resourceService.GetResourceValue("MyResources", "ResourceKeyName");
我没有时间测试代码,我是随手写的,但它应该能给你大致的思路。 IMO,将 resx 文件放在单独的项目中没有错。 另一种方法是在使用它们的地方放置 .resx 文件。我发现单独的项目想法更好,因为那样的话,您可以为每种类型的语言创建单独的文件夹,并在其中存储特定于区域设置的 .resx 文件。
关于c# - 是否建议使用 .resx 文件在类库中存储常见的字符串引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12410162/