我需要更改 Sitecore 登录页面 (www.example.com/sitecore/login) 上的默认消息。看起来该消息来自Sitecore.sitecore.login.Login_LoginError
. Sitecore.Client.dll
但是,该方法是私有的,这意味着我被卡住了:
- 我无法覆盖该方法,因为它是私有的。
- 我无法从
LoginError
事件中取消订阅处理程序,因为处理程序是私有的。 - 我无法将自己的处理程序添加到事件中以更改文本,因为我无法保证调用处理程序的顺序。
在我看来,我有两个选择,都不好:
- 从头开始编写我自己的登录页面类,尽可能使用现有代码,但要暴露我需要的成员。
- 使用反射来查找私有处理程序,以便我可以从事件中取消订阅它。
我也不想做。有没有更好的办法?