【发布时间】:2011-06-29 16:46:48
【问题描述】:
我的应用程序同时具有 UI (ASP.Net) 和 WebServices API (WCF) 前端,它们都调用单个业务层。我们使用自定义异常类型来传达来自业务层的错误,这些错误可以安全地显示给最终用户。例如,如果用户尝试执行超出其凭据的操作,则业务层将抛出新的 FriendlyException(“您没有权限”)。 UI 层然后处理此异常并将此消息显示给最终用户。如果 API 进行了此调用,则 FaultException 数据中将显示“您没有权限”消息。
我们现在遇到的问题是我们需要开始本地化所有这些消息。当前的想法是让 BusinessLayer 抛出静态字符串(“NO_PERMISSION_ERROR”),UI 和 API 处理程序将使用这些字符串在各自的资源文件中查找本地化字符串。唯一的缺点是我们的 API 本地化和 UI en-US 本地化基本相同且重复。我们可以通过使用其他模式来避免这种情况,还是我们走在正确的轨道上?
谢谢, J
【问题讨论】:
标签: c# exception localization