private static bool IsVisibleFieldPropertyOrEvent(IEntity entity)
{
switch (entity.EntityType)
{
case EntityType.Field:
var field = (IField)entity;
return !TypeSystemServices.IsReadOnlyField(field) && IsVisible(field);
case EntityType.Event:
var @event = (IEvent)entity;
return IsVisible(@event.GetAddMethod());
case EntityType.Property:
var property = (IProperty)entity;
return IsVisible(property);
}
return false;
}