Ejemplo n.º 1
0
        /// <summary>
        /// 解析图象、字符串资源
        /// </summary>
        /// <param name="configuration">配置项</param>
        private void ParseResource(IConfiguration configuration)
        {
            Guard.ArgumentNotNull(configuration, "configuration");
            IStringService strService = workItem.Services.Get <IStringService>();

            if (strService != null)
            {
                foreach (IConfiguration config in configuration.Children)
                {
                    switch (config.Name)
                    {
                    //case "Images": // Images
                    //    foreach (IConfiguration image in config.Children)
                    //    {
                    //        if (image.Attributes["key"] != null && image.Attributes["value"] != null)
                    //            strService.RegisterImages(image.Attributes["key"], image.Attributes["value"]);
                    //    }
                    //    break;

                    // 当前还没有实现直接注册字符串资源
                    case "Strings":      // Strings
                        foreach (IConfiguration str in config.Children)
                        {
                            if (str.Attributes["key"] != null && str.Attributes["value"] != null)
                            {
                                strService.Register(str.Attributes["key"], str.Attributes["value"]);
                            }
                        }
                        break;
                    }
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 注册用户信息
        /// </summary>
        private void RegisterUserInfo()
        {
            IInitializeService initService = RootWorkItem.Services.Get <IInitializeService>();

            if (initService != null)
            {
                UserInfo user = initService.GetUserInfo(CommunicateProxy.UserName);
                RootWorkItem.Items.Add(user, "CurrentUser");
                IMembershipService membershipServce = RootWorkItem.Services.Get <IMembershipService>();
                if (membershipServce != null)
                {
                    string[] roles = membershipServce.GetRolesForUser(CommunicateProxy.UserName);
                    Thread.CurrentPrincipal = new GenericPrincipal(new GenericIdentity(CommunicateProxy.UserName), roles);
                    IStringService strService = RootWorkItem.Services.Get <IStringService>();
                    if (strService != null)
                    {
                        strService.Register("CurrentUser", CommunicateProxy.UserName);
                    }
                }
                // 为环境变量赋值
                SmartClientEnvironment scEnvironment = RootWorkItem.Services.Get <SmartClientEnvironment>();
                if (scEnvironment != null)
                {
                    scEnvironment.CurrentUser = user;
                }
            }
        }