Я хочу перебрать все оборудование на чертеже и получить название оборудования.Revit MEP 2011 C# повторить все оборудование
Вот что у меня есть:
UIApplication uiapp = commandData.Application;
UIDocument uidoc = uiapp.ActiveUIDocument;
Application app = uiapp.Application;
Document doc = uidoc.Document;
// get all PanelScheduleView instances in the Revit document.
FilteredElementCollector fec = new FilteredElementCollector(doc);
ElementClassFilter EquipmentViewsAreWanted =
new ElementClassFilter(typeof(ElectricalEquipment));
fec.WherePasses(EquipmentViewsAreWanted);
List<Element> eViews = fec.ToElements() as List<Element>;
StringBuilder Disp = new StringBuilder();
foreach (ElectricalEquipment element in eViews)
{
Disp.Append("\n" + element.);
}
System.Windows.Forms.MessageBox.Show(Disp.ToString());
Я получаю следующее сообщение об ошибке в петле foreach
:
Не удается преобразовать тип 'Autodesk.Revit.DB.Element' в «Autodesk. Revit.DB.Electrical.ElectricalOquipment '
Любые предложения?
Не совсем ответ, но это привело меня к тому, что я искал. В принципе, вы можете сделать Электрическое оборудование в массив с fec.toArray() вместо toElements; затем итерации. Спасибо за помощь. – CornCat