/// <inheritdoc /> public Gizmo Convert(ItemDTO value, object state) { var entity = new ContainerKey(); this.Merge(entity, value, state); return(entity); }
public static IServiceCollection AddTransientWithKey <TService, TImplementation>(this IServiceCollection serviceCollection, string key) where TService : class where TImplementation : class, TService { var containerKey = new ContainerKey(key, typeof(TService)); serviceCollection.AddTransient <TService, TImplementation>(); _container.Add(containerKey, typeof(TImplementation)); return(serviceCollection); }
public static IServiceCollection AddResolver <TService>(this IServiceCollection serviceCollection) where TService : class { serviceCollection.AddTransient <Func <string, TService> >( provider => key => { var containerKey = new ContainerKey(key, typeof(TService)); var errorMessage = $"Can't resolve {typeof(TService).FullName} service by key: '{key}'."; if (!_container.TryGetValue(containerKey, out var implementationType)) { throw new Exception(errorMessage); } return(provider.GetServices <TService>().FirstOrDefault(x => x.GetType() == implementationType) ?? throw new Exception(errorMessage)); }); return(serviceCollection); }
protected void Page_Load(object sender, EventArgs e) { RegisterLinks(); if (!Page.IsPostBack) { if (Request["ContainerKey"] != null && Request["ContainerKey"] != String.Empty) { ContainerKey = Request["ContainerKey"]; if (ContainerKey.Contains("ProjectId_")) { string s = ContainerKey.Substring(10); int i = -1; if (int.TryParse(s, out i)) { ucProject.ObjectId = i; ucProject.ObjectTypeId = (int)ObjectTypes.Project; } } } ViewState["ContainerKey"] = ContainerKey; } GetCurrentFolder(); lblPathTitle.Text = LocRM.GetString("tPath"); lblProject.Text = LocRM.GetString("Project"); if (!Page.IsPostBack) { if (pc["fs_Sort1_" + ContainerKey] == null) { pc["fs_Sort1_" + ContainerKey] = "sortName"; } } else { BindStorage(); } }
/// <summary> /// Serializes the current instance to an Xml representation - intended to be persisted in an <see cref="ExtendedDataCollection"/> /// </summary> /// <returns>An Xml string</returns> internal string SerializeToXml() { string xml; using (var sw = new StringWriter()) { var settings = new XmlWriterSettings { OmitXmlDeclaration = true }; using (var writer = XmlWriter.Create(sw, settings)) { writer.WriteStartDocument(); writer.WriteStartElement(Constants.ExtendedDataKeys.LineItem); writer.WriteElementString(Constants.ExtendedDataKeys.ContainerKey, ContainerKey.ToString()); writer.WriteElementString(Constants.ExtendedDataKeys.LineItemTfKey, LineItemTfKey.ToString()); writer.WriteElementString(Constants.ExtendedDataKeys.Sku, Sku); writer.WriteElementString(Constants.ExtendedDataKeys.Name, Name); writer.WriteElementString(Constants.ExtendedDataKeys.Quantity, Quantity.ToString(CultureInfo.InvariantCulture)); writer.WriteElementString(Constants.ExtendedDataKeys.Price, Price.ToString(CultureInfo.InvariantCulture)); writer.WriteStartElement(Constants.ExtendedDataKeys.ExtendedData); writer.WriteRaw(ExtendedData.SerializeToXml()); writer.WriteEndElement(); writer.WriteEndElement(); // ExtendedData writer.WriteEndDocument(); } xml = sw.ToString(); } return(xml); }
private void BindUsers(int GroupID) { ddUsers.Items.Clear(); AccessControlList ACLr = (AccessControlList)ViewState["ACL"]; ArrayList alList = new ArrayList(); foreach (AccessControlEntry ACEr in ACLr) { if (ACEr.OwnerKey == Guid.Empty) { alList.Add((ACEr.IsRoleAce) ? ACEr.Role : ACEr.PrincipalId.ToString()); } } DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("UserId", typeof(string))); // 0 dt.Columns.Add(new DataColumn("UserName", typeof(string))); // 1 DataRow dr; if (GroupID == 0) { #region Roles #region General Roles if (!alList.Contains(UserRoleHelper.AdminRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.AdminRoleName; dr[1] = LocRM.GetString("tAdmins"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.PowerProjectManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.PowerProjectManagerRoleName; dr[1] = LocRM.GetString("tPPManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.HelpDeskManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.HelpDeskManagerRoleName; dr[1] = LocRM.GetString("tHDM"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.GlobalProjectManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.GlobalProjectManagerRoleName; dr[1] = LocRM.GetString("tGlobalPManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.GlobalExecutiveManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.GlobalExecutiveManagerRoleName; dr[1] = LocRM.GetString("tGlobalEManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.TimeManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.TimeManagerRoleName; dr[1] = LocRM.GetString("tTM"); dt.Rows.Add(dr); } #endregion #region General Project Roles if (!ContainerKey.StartsWith("Workspace")) { if (!alList.Contains(UserRoleHelper.ProjectManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.ProjectManagerRoleName; dr[1] = LocRM.GetString("tPManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.ExecutiveManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.ExecutiveManagerRoleName; dr[1] = LocRM.GetString("tExMan"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.ProjectTeamRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.ProjectTeamRoleName; dr[1] = LocRM.GetString("tTeam"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.ProjectSponsorRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.ProjectSponsorRoleName; dr[1] = LocRM.GetString("tSponsors"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.ProjectStakeHolderRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.ProjectStakeHolderRoleName; dr[1] = LocRM.GetString("tStake"); dt.Rows.Add(dr); } } #endregion #region Incident Roles if (ContainerKey.StartsWith("IncidentId_")) { if (!alList.Contains(UserRoleHelper.IssueCreatorRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.IssueCreatorRoleName; dr[1] = LocRM.GetString("tICreator"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.IssueManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.IssueManagerRoleName; dr[1] = LocRM.GetString("tIManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.IssueResourceRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.IssueResourceRoleName; dr[1] = LocRM.GetString("tIResource"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.IssueTodoResource)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.IssueTodoResource; dr[1] = LocRM.GetString("tITodoResource"); dt.Rows.Add(dr); } } #endregion #region Task Roles if (ContainerKey.StartsWith("TaskId_")) { if (!alList.Contains(UserRoleHelper.TaskCreatorRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.TaskCreatorRoleName; dr[1] = LocRM.GetString("tTkCreator"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.TaskManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.TaskManagerRoleName; dr[1] = LocRM.GetString("tTkManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.TaskResourceRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.TaskResourceRoleName; dr[1] = LocRM.GetString("tTkResource"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.TaskTodoResource)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.TaskTodoResource; dr[1] = LocRM.GetString("tTkTodoResource"); dt.Rows.Add(dr); } } #endregion #region Document Roles if (ContainerKey.StartsWith("DocumentId_")) { if (!alList.Contains(UserRoleHelper.DocumentCreatorRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.DocumentCreatorRoleName; dr[1] = LocRM.GetString("tDocCreator"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.DocumentManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.DocumentManagerRoleName; dr[1] = LocRM.GetString("tDocManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.DocumentResourceRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.DocumentResourceRoleName; dr[1] = LocRM.GetString("tDocResource"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.DocumentTodoResource)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.DocumentTodoResource; dr[1] = LocRM.GetString("tDocTodoResource"); dt.Rows.Add(dr); } } #endregion #region Event Roles if (ContainerKey.StartsWith("EventId_")) { if (!alList.Contains(UserRoleHelper.EventCreatorRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.EventCreatorRoleName; dr[1] = LocRM.GetString("tEvCreator"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.EventManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.EventManagerRoleName; dr[1] = LocRM.GetString("tEvManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.EventResourceRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.EventResourceRoleName; dr[1] = LocRM.GetString("tEvResources"); dt.Rows.Add(dr); } } #endregion #region ToDo Roles if (ContainerKey.StartsWith("ToDoId_")) { if (!alList.Contains(UserRoleHelper.TodoCreatorRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.TodoCreatorRoleName; dr[1] = LocRM.GetString("tTdCreator"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.TodoManagerRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.TodoManagerRoleName; dr[1] = LocRM.GetString("tTdManager"); dt.Rows.Add(dr); } if (!alList.Contains(UserRoleHelper.TodoResourceRoleName)) { dr = dt.NewRow(); dr[0] = UserRoleHelper.TodoResourceRoleName; dr[1] = LocRM.GetString("tTdResources"); dt.Rows.Add(dr); } } #endregion #endregion } else { using (IDataReader reader = SecureGroup.GetListAllUsersInGroup(GroupID)) { while (reader.Read()) { int iUserId = (int)reader["UserId"]; if (alList.Contains(iUserId.ToString())) { continue; } bool IsExternal = (bool)reader["IsExternal"]; byte Activity = (byte)reader["Activity"]; if (!(IsExternal || Activity == (byte)Mediachase.IBN.Business.User.UserActivity.Pending)) { dr = dt.NewRow(); dr[0] = iUserId.ToString(); dr[1] = (string)reader["LastName"] + " " + (string)reader["FirstName"]; dt.Rows.Add(dr); } } } } DataView dv = new DataView(dt); ddUsers.DataSource = dv; ddUsers.DataTextField = "UserName"; ddUsers.DataValueField = "UserId"; ddUsers.DataBind(); btnAdd.Disabled = false; if (GroupID > 0) { ddUsers.Items.Insert(0, new ListItem(LocRM.GetString("tAny"), "0")); } else if (ddUsers.Items.Count == 0) { ddUsers.Items.Insert(0, new ListItem(LocRM.GetString("tEmpty"), "0")); btnAdd.Disabled = true; } }
// Implement this method in a buddy class to set properties that are specific to 'ContainerKey' (if any) partial void Merge(ContainerKey entity, ItemDTO dto, object state);
public bool IsRegistered(ContainerKey key, string name = "default") => container.ContainsKey(key);