我一般对本地化不是很熟悉,而且我对 Microsoft Enterprise Library 是全新的。如何创建本地化资源并在异常管理中使用它?
我设置了一个替换处理程序,以便在我的策略处理异常时抛出友好的错误消息,并且那里有用于指定消息资源名称和消息资源类型的字段。我不知道这些领域发生了什么。我找不到任何例子。
我一般对本地化不是很熟悉,而且我对 Microsoft Enterprise Library 是全新的。如何创建本地化资源并在异常管理中使用它?
我设置了一个替换处理程序,以便在我的策略处理异常时抛出友好的错误消息,并且那里有用于指定消息资源名称和消息资源类型的字段。我不知道这些领域发生了什么。我找不到任何例子。
您不必手动编辑 Designer 文件;事实上,你不应该。
我使用的是 VS 2010 和 C#,但 VS 2012 和 VB 的概念应该相同。
除了您的回答之外,以下链接对我非常有帮助,可以解决这个问题:
http://odetocode.com/blogs/scott/archive/2009/07/16/resource-files-and-asp-net-mvc-projects.aspx
(你可以忽略他关于 App_GlobalResources 的警告——这就是我的 Exceptions.resx 文件,这对我有用。)
我想通了。
您可以像任何其他本地化一样在 .resx 文件中添加标准资源。我的问题是,当我在企业库的配置界面中将资源类型和资源名称添加到我的替换处理程序时,程序集没有包含任何要添加的类型。
问题是两件事。当您使用 VB.Net 在 Visual Studio 2012 中创建 .resx 时,它使用 My.Resources 作为命名空间。可能是 My.[FolderName],我不知道。另一个问题是它将类创建为 Friend,而不是 Public。
我不得不更改属性中的命名空间,并在 .vb 文件中手动将 Friend 更改为 Public。每当我添加新资源时它就会变回来,因为它会重新生成代码,但至少现在我可以让它工作。