Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在asp.net页面中手动重新计算表达式_C#_Asp.net_Translation_Expressionbuilder - Fatal编程技术网

C# 在asp.net页面中手动重新计算表达式

C# 在asp.net页面中手动重新计算表达式,c#,asp.net,translation,expressionbuilder,C#,Asp.net,Translation,Expressionbuilder,我们正在应用程序中使用自定义表达式生成器进行翻译。所选语言将保存在会话中。实际翻译在应用程序缓存首次启动时加载到应用程序缓存中。 我们正在使用.NET3.5/c 整个事情看起来像这个例子 <asp:MenuItem Text="<%$Trans:TEXT_MENU_ABOUT_US %>" Value="AboutUs" NavigateUrl="#"> 现在用户可以更改语言,通常这不是问题。他只需单击所需的语言,页面就会重新加载新语言。 然而,用户可以在购买物品时登录

我们正在应用程序中使用自定义表达式生成器进行翻译。所选语言将保存在会话中。实际翻译在应用程序缓存首次启动时加载到应用程序缓存中。 我们正在使用.NET3.5/c

整个事情看起来像这个例子

<asp:MenuItem Text="<%$Trans:TEXT_MENU_ABOUT_US %>" Value="AboutUs" NavigateUrl="#">
现在用户可以更改语言,通常这不是问题。他只需单击所需的语言,页面就会重新加载新语言。 然而,用户可以在购买物品时登录并获取其语言。我不能只是重新加载当前页面,因为它在购买过程中

不幸的是,在登录按钮的简单单击事件上设置语言之前,所有表达式都已经过计算,因此用户在导航到购买过程的下一步之前无法获得其语言

是否可以告诉当前页面重新计算所有表达式以反映新选择的语言


感谢您抽出时间

尝试使用server.transfer转到同一页面。另一方面,通常情况下,您应该在页面生命周期的早期更改区域性/UI区域性—可能是通过直接使用请求对象—这样,您可以避免刷新页面以反映新语言。很抱歉,没有提前响应。项目/变更被推迟了,我无法真正测试它。但我会记住你的建议。谢谢