public void TestCreate() { IRoleApi roleApi = SpringContext.Current.GetObject<IRoleApi>(); IOrganizationApi organizationApi = SpringContext.Current.GetObject<IOrganizationApi>(); IMembershipApi membershipApi = SpringContext.Current.GetObject<IMembershipApi>(); IPermissionApi permissionApi = SpringContext.Current.GetObject<IPermissionApi>(); RoleDetailPanel page = new RoleDetailPanel(); DetailPanelPageProxy proxy = new DetailPanelPageProxy(page); using (var httpEnv = new HttpEnvironment()) { httpEnv.SetRequestUrl(@"/RoleDetailPanel/DynamicPage.svc?Domain=Department"); UserObject current = membershipApi.Get("admin"); httpEnv.SetSessionParaemeter("CurrentUser", current); #region create Data Guid guid = Guid.NewGuid(); string surfix = guid.ToString().Substring(0, 5); OrganizationTypeObject obj = new OrganizationTypeObject() { Name = "OrganizationTypeTest" + surfix, Description = "OrganizationTypeTest" + surfix, Predefined = false, Domain = "Department", DeleteStatus = DeleteStatus.NotDeleted }; organizationApi.Save(obj); OrganizationTypeObjectIds.Add(obj.OrganizationTypeId); #endregion #region bind web control PermissionTreeView permissionTreeView = new PermissionTreeView(); proxy.Set("PermissionTreeView", permissionTreeView); Type _type = typeof(PermissionTreeView); _type.GetMethod("OnInit", BindingFlags.NonPublic | BindingFlags.Instance).Invoke(permissionTreeView, new object[] { new EventArgs() }); IList<string> values = new List<string>(); IList<PermissionConfig> permissions = permissionApi.FindPermissionConfig(current.UserId).ToList<PermissionConfig>(); for (int i = 0; i < permissions.Count; i++) { if ((permissions[i].Value == null) || (permissions[i].Value.Equals(String.Empty))) values.Add("P"+i); else values.Add(permissions[i].Value); } permissionTreeView.CheckedValues = values; TextBox TextBoxName = new TextBox(); TextBoxName.Text = "SuperRole" + surfix; proxy.Set("TextBoxName", TextBoxName); TextBox TextBoxDescription = new TextBox(); TextBoxDescription.Text = "SuperRole" + surfix; proxy.Set("TextBoxDescription", TextBoxDescription); #endregion string entityId = proxy.Create(); RoleIds.Add(new Guid(entityId)); } }