我在我的项目中使用angular-translate for i8n.我正在使用ansynchronous url-loader来加载我的翻译表.
$translate.useUrlLoader(myUrl)
Run Code Online (Sandbox Code Playgroud)
translate 指令和过滤器都返回我正在翻译的密钥,直到加载转换表.
<a ng-bind="translation.key | translate"></a>
<a translate="translation.key></a>
Run Code Online (Sandbox Code Playgroud)
以上两者都在网页上显示"translation.key",直到加载转换表.
注意:我有理由不听$ translationChangeSuccess事件.
我正在寻找两种解决方案中的任何一种
- 从URL同步加载转换表.
- 在完全加载转换表之前,不要显示已翻译的文本.
我希望创建一个自定义属性来抑制在C#中执行方法,即使它被调用.例如,在下面的代码块中,如果方法具有"跳过"属性,即使从Main调用它也不应该执行.
public class MyClass {
public static void main()
{
aMethod();
}
[Skip]
public void aMethod() {
..
}
}
Run Code Online (Sandbox Code Playgroud)
如何使用C#中的反射来实现这一目标?
在下面的代码片段中,我设法提取了带有Skip属性的方法,我无法弄清楚如何阻止它们执行!
MethodInfo[] methodInfos = typeof (MyClass).GetMethods();
foreach (var methodInfo in methodInfos)
{
if (methodInfo.HasAttribute(typeof(SkipAttribute)))
{
// What goes here ??
}
}
Run Code Online (Sandbox Code Playgroud)
我们非常欢迎任何有正确方向的帮助或建议:)