public static void ConfigureEntityButtons(EntityBase eb, Type cleanType) { eb.Create &= cleanType.IsEmbeddedEntity() ? Navigator.IsCreable(cleanType, isSearchEntity: false) : eb.Implementations.Value.IsByAll ? false : eb.Implementations.Value.Types.Any(t => Navigator.IsCreable(t, isSearchEntity: false)); eb.View &= cleanType.IsEmbeddedEntity() ? Navigator.IsViewable(cleanType, eb.PartialViewName) : eb.Implementations.Value.IsByAll ? true : eb.Implementations.Value.Types.Any(t => Navigator.IsViewable(t, eb.PartialViewName)); eb.Navigate &= cleanType.IsEmbeddedEntity() ? Navigator.IsNavigable(cleanType, eb.PartialViewName, isSearchEntity: false) : eb.Implementations.Value.IsByAll ? true : eb.Implementations.Value.Types.Any(t => Navigator.IsNavigable(t, eb.PartialViewName, isSearchEntity: false)); eb.Find &= cleanType.IsEmbeddedEntity() ? false : eb.Implementations.Value.IsByAll ? false : eb.Implementations.Value.Types.Any(t => Navigator.IsFindable(t)); }
protected virtual string GetEntitySetting(Type type) { var v = GetVarName(type); return "new {0}<{1}>() {{ View = {2} => new {3}() }},".FormatWith( type.IsEmbeddedEntity() ? "EmbeddedEntitySettings" : "EntitySettings", type.Name, v, GetViewName(type)); }
public static FilterType? TryGetFilterType(Type type) { var uType = type.UnNullify(); if (uType == typeof(Guid)) return FilterType.Guid; if (uType.IsEnum) return FilterType.Enum; switch (Type.GetTypeCode(uType)) { case TypeCode.Boolean: return FilterType.Boolean; case TypeCode.Double: case TypeCode.Decimal: case TypeCode.Single: return FilterType.Decimal; case TypeCode.Byte: case TypeCode.SByte: case TypeCode.Int16: case TypeCode.Int32: case TypeCode.Int64: case TypeCode.UInt16: case TypeCode.UInt32: case TypeCode.UInt64: return FilterType.Integer; case TypeCode.DateTime: return FilterType.DateTime; case TypeCode.Char: case TypeCode.String: return FilterType.String; case TypeCode.Object: if (type.IsLite()) return FilterType.Lite; if (type.IsIIdentifiable()) return FilterType.Lite; if (type.IsEmbeddedEntity()) return FilterType.Embedded; goto default; default: return null; } }
protected virtual string GetEntitySetting(Type type) { var v = GetVarName(type); return "new {0}<{1}>() {{ PartialViewName = {2} => ViewPrefix.FormatWith(\"{3}\") }},".FormatWith( type.IsEmbeddedEntity() ? "EmbeddedEntitySettings" : "EntitySettings", type.Name, v, GetViewName(type)); }