Available output settings
The following settings are available for the LLBLGen Pro Runtime Framework. There are two sections, one for the global defaults, which you can edit in the Project Settings Editor of the designer (in the Conventions: LLBLGen Pro Runtime Framework node), and one which discusses the settings available per element, and which default setting sets their default value. This way you can easily track which default to set for which element setting.
Additionally the default attribute definitions per element is given.
Defaults
The following default settings and attributes are available, which control the default value for settings available per element.
Settings
These settings are edited using the Project Properties Editor, Output Setting Values tab.
- EntityBaseClassNameDefault
- This setting specifies the default value for the EntityBaseClassName setting of an entity. When using a non-POCO/non-IPOCO preset, be sure the class specified derives (in)directly from the generated CommonEntityBase class. Default value: CommonEntityBase
- FieldPropertyIsPublicDefault
- This setting specifies the default value for the FieldPropertyIsPublic setting of an entity field. Default value: true
- GenerateAsNullableTypeDefault
- This setting specifies the default value for the GenerateAsNullableType setting of a new entity field. Default value: true
- NavigatorPropertyIsPublicDefault
- This setting specifies the default value for the NavigatorPropertyIsPublic setting of an entity field. Default value: true
- TypedListOutputTypeDefault
- Default value for OutputType setting for typed lists. For new projects, the default value for this setting is
PocoWithQuerySpecQuery
. For projects created with v5.1 or earlier, the default value for this setting isTypedDataTable
. - TypedListRowBaseClassNameDefault
- Default value for the TypedListRowBaseClassName setting, similar to Linq to Sql. Is empty by default.
- TypedViewOutputTypeDefault
- Default value for OutputType setting for typed Views. For new projects, the default value for this setting is
PocoWithQuerySpecQuery
. For projects created with v5.1 or earlier, the default value for this setting isTypedDataTable
. - TypedViewRowBaseClassNameDefault
- Default value for the TypedViewRowBaseClassName setting, similar to Linq to Sql. Is empty by default.
Default attribute definitions
The following attribute definitions are defined by default for the LLBLGen Pro Runtime Framework. These attribute definitions are edited using the Project Settings Editor, Attributes node.
Browsable($false)
- Defined for element types: Navigator returning single value.
Element Settings
The following settings are available per element. These settings are edited on the element's own editor (or the containing element's editor, in the case where the element itself doesn't have a separate editor) on the Code-gen info tab, or on the Project Settings Editor, if the element is the project.
Entity definition settings
- EntityBaseClassName
- The name of the base class for the generated entity class. The following macros are available:
{$Name}
for the entity name without group name,{$GroupName}
for the name of the group the entity is in,{$FullName}
for the group name plus entity name. Sub-types will always inherit from their super-type and not from the class specified. The specified class has to inherited (in)directly from the runtime framework's base class for entities: EntityBase (Self-servicing) or EntityBase2 (Adapter) Default value: the value of the default EntityBaseClassNameDefault.
Typed List definition settings
- OutputType
- Setting which controls the output type of the typed
list:
TypedDataTable
,PocoWithLinqQuery
orPocoWithQuerySpecQuery
. Default value is controlled by the project level setting TypedListOutputTypeDefault. - TypedListRowBaseClassName
- Setting which specifies the base class for the typed list poco classes. Is empty by default.
Typed View definition settings
- OutputType
- Setting which controls the output type of the typed
view:
TypedDataTable
,PocoWithLinqQuery
orPocoWithQuerySpecQuery
. Default value is controlled by the project level setting TypedViewOutputTypeDefault. - TypedViewRowBaseClassName
- Setting which specifies the base class for the typed view poco classes. Is empty by default.
Field settings (value type definition field, entity definition field)
- GenerateAsNullableType
- When set to true, the field's type will
be generated as a
Nullable<T>
/Nullable(Of T)
, if the field's type is a value type and the field is nullable Default value: the value of the default GenerateAsNullableTypeDefault. - FieldPropertyIsPublic
- When set to true (default), the property of an entity field is generated as public. When set to false, the property is generated as internal (friend in VB.NET) Default value: the value of the default FieldPropertyIsPublicDefault.
- FieldPropertyHasPrivateSetter
- (C# only) When set to true, the setter of the property of an entity field is generated as private. If the field is part of the identifying fields, this setting is ignored. Default value: false.
Navigator settings
- NavigatorPropertyIsPublic
- When set to true (default), the property of a navigator is generated as public. When set to false, the property is generated as internal (friend in VB.NET) Default value: the value of the default NavigatorPropertyIsPublicDefault.
Project settings
General
- ConvertNulledReferenceTypesToDefaultValue
- When set to false, an entity field in the LLBLGen Pro Runtime Framework which has a
reference type (e.g. string) will return
null / Nothing
if the value for the field isnull / Nothing
. When set to true, the default value belonging to that reference type is returned. The default value for a type is produced by the generated classTypeDefaultValue
. Default value: true - InlineValueTypedFields
- This setting will control whether the code generator will inline the valuetype fields as normal fields. When set to false, the validator will throw an error if the project has a valuetyped field. Default value: true.
- TdlEmitTimeDateInOutputFiles
- When set to true, the TDL code emitter will emit the time and date for the
<[Time]>
statement for the LLBLGen Pro Runtime Framework, otherwise nothing will be emitted for that statement. Set to false if you need files to stay the same if they're not effectively changed, for example for source control systems. Default value: false.
Generated code, Adapter, backwards compatibility
- GenerateEntityFieldFactory
- When set to true (default is false), the code generator will for Adapter generate an EntityFieldFactory class. Set this setting to true if you need the functionality of EntityFieldFactory. It's not generated by default. If set to false, an existing EntityFieldFactory class will be removed from the output folder.
- GenerateEntityFieldsFactory
- When set to true (default is false), the code generator will generate for Adapter an EntityFieldsFactory class. Set this setting to true if you need the functionality of EntityFieldsFactory. It's not generated by default. If set to false, an existing EntityFieldsFactory class will be removed from the output folder.
Template group specific, Adapter
- AdapterDbGenericProjectFileSuffix
- This value is the suffix appended to the Visual Studio project filename for the database generic generated code Default value: empty string
- AdapterDbGenericSubFolderName
- This value is the name for the subfolder in the destination folder in which the generated database generic files are placed. Default value: DatabaseGeneric
- AdapterDbSpecificNamespaceSuffix
- This value is the suffix appended to the root namespace for the database specific generated
code. Do not prefix this name with a
.
, as that's added automatically by the code generator. Default value: DatabaseSpecific - AdapterDbSpecificProjectFileSuffix
- This value is the suffix appended to the Visual Studio project filename for the database specific generated code. Default value: DbSpecific
- AdapterDbSpecificSubFolderName
- This value is the name for the subfolder in the destination folder in which the generated database specific files are placed. Default value: DatabaseSpecific
Template group specific, SelfServicing
- LazyLoadingWithoutResultReturnsNew
- When set to true, lazy loading functionality for the LLBLGen Pro Runtime Framework which
fetches a m:1 or 1:1 related entity will return a new entity when
the related entity to fetch is not found. When set to false, it will
return
null / Nothing
. SelfServicing specific. Default value: false