Category / Section
How to remove the specific item from the element using its unique name
1 min read
We can remove any item using the item’s unique name and its CubeName. . This can be done by removing the particular item from its level members collection which is generated from the GetLevelMembers() method using its unique name.
Please modify the GetLevelMembers() function in OlapManager.svc.cs as below.
C#
public MemberCollection GetLevelMembers(string levelUniqueName, string cubeName) { MemberCollection levelMembers = _dataManager.GetLevelMembers(levelUniqueName, cubeName); _dataManager.DataProvider.CloseConnection(); if (!string.IsNullOrEmpty(_selectedCountry) && levelUniqueName == "[" + _dimensionName + "].[" + _hierarchyName + "].[" + _levelName + "]") { var selectedMembers = levelMembers.Select(i => i).Where(j => j.Caption == _selectedCountry).ToList<Member>(); levelMembers.Clear(); foreach (var item in selectedMembers) { levelMembers.Add(item); ////Selects only the selected country to level member collection. } } if (cubeName == "Adventure Works" && levelUniqueName.Contains("Date")) { RemoveItem(levelMembers, "FY 2005"); } else if (cubeName == "Finance" && levelUniqueName.Contains("Date")) { RemoveItem(levelMembers, "FY 2005"); } return levelMembers; } private static void RemoveItem(MemberCollection levelMembers, string itemName) { var selectedMembers2 = levelMembers.Select(i => i).Where(j => j.Caption != itemName).ToList<Member>(); levelMembers.Clear(); foreach (var item in selectedMembers2) { levelMembers.Add(item); } }