阅读:2793 回复:6
实名用户_268a9ec2
6

帖子

18

跟帖

1158

积分

中级榴莲
中级榴莲
  • 社区居民

[求助]挺急! 调用webservice中写的中英文转换 在已登录情况下不会转换

楼主#
更多 发布于:2017-02-23 16:20
webservice里的代码
          User user = this.Engine.Organization.GetUserByEmployeeNumber(EmployeeId.Trim());
            user.DefaultLanguage = Language;
            this.Engine.Organization.UpdateUnit(user.ObjectID, user);




参考的Top.ascx中的代码


调用之后在用户已登录的状态中是不会中英文转换的   重新登录之后才会进行对应的转换
我这边需要在用户已登录的状态中调用webservice代码之后刷新页面就进行对应的转换
怎么实现
实名用户_268a9ec2
6

帖子

18

跟帖

1158

积分

中级榴莲
中级榴莲
  • 社区居民
1楼#
发布于:2017-02-24 15:45
奥哲黄杰:改下这个地方试试看回到原帖
不好用啊   试一天了   各种姿势  都不好用
实名用户_268a9ec2
6

帖子

18

跟帖

1158

积分

中级榴莲
中级榴莲
  • 社区居民
2楼#
发布于:2017-02-24 15:49
我这个是v8版本的 调用我写的webservice修改v9版本的用户默认语言  

在用户已登录状态下 不会改变语言  重新登录下就好了     怎么才能在不用重新登录的情况下同步改变语言
实名用户_268a9ec2
6

帖子

18

跟帖

1158

积分

中级榴莲
中级榴莲
  • 社区居民
3楼#
发布于:2017-02-24 17:08
武汉技术支持团队:在webservic中给Sessions.GetLang()重新赋值或者重写session["H3_Language"]应该可以解决的。回到原帖
不好用啊   在已登录的状态下怎么改都不好用  


在已登录状态下调用下边的方法都是没变的     我眼看着数据库里字段是en-US  但方法返回的都是zh-CN

/// <summary>
        /// 从数据库获取默认语言
        /// </summary>
        /// <param name="conn">连接数据库字符串</param>
        /// <param name="EmployeeNumber">员工编号</param>
        /// <returns>用户默认语言</returns>
        public static string GetUserLanguage(string conn, string EmployeeNumber)
        {
            try
            {
                string UPUserAlias = EmployeeNumber.ToUpper();
                string handle = string.Empty;
                string sql = "select DefaultLanguage from OT_User where EmployeeNumber=@EmployeeNumber";
                OThinker.Data.Database.CommandFactory factory = new OThinker.Data.Database.CommandFactory(OThinker.Data.Database.DatabaseType.SqlServer, conn);
                OThinker.Data.Database.ICommand command = factory.CreateCommand();
                OThinker.Data.Database.Parameter[] parameters = new OThinker.Data.Database.Parameter[] {
                  new OThinker.Data.Database.Parameter("@EmployeeNumber", System.Data.DbType.String, UPUserAlias)};
                DataTable dt = command.ExecuteDataTable(sql, parameters);
                if (dt != null && dt.Rows.Count > 0)
                {
                    handle = dt.Rows[0]["DefaultLanguage"] + "";
                }
                return handle;
            }
            catch (Exception ex)
            {
                OThinker.H3.WorkSheet.AppUtility.Engine.LogWriter.Write("从数据库获取默认语言失败"+ex.Message);
                throw ex;
            }
        }
游客

返回顶部