using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Tango.CodeGeneration
{
/// <summary>
/// Represents a database entity code file.
/// </summary>
/// <seealso cref="Tango.CodeGeneration.Class" />
public class EntityCodeFile : Class
{
/// <summary>
/// Gets or sets the name of the entity.
/// </summary>
public String EntityName { get; set; }
/// <summary>
/// Gets or sets the name of the table.
/// </summary>
public String TableName { get; set; }
/// <summary>
/// Gets or sets the table fields.
/// </summary>
public List<EntityCodeFileField> Fields { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="EntityCodeFile"/> class.
/// </summary>
/// <param name="name">The code file name.</param>
public EntityCodeFile(String name) : base(name)
{
Fields = new List<EntityCodeFileField>();
}
}
/// <summary>
/// Represents a database entity code file field.
/// </summary>
public class EntityCodeFileField
{
/// <summary>
/// Gets or sets the name.
/// </summary>
public String Name { get; set; }
/// <summary>
/// Gets or sets the name of the field.
/// </summary>
public String FieldName { get; set; }
/// <summary>
/// Gets or sets the type.
/// </summary>
public String Type { get; set; }
public bool XmlIgnore { get; set; }
/// <summary>
/// Gets or sets the description.
/// </summary>
public String Description { get; set; }
public String DbDescription { get; set; }
public DbPropertyExtensionModel PropertyExtension { get; set; }
public bool IsForeignKey { get; set; }
public String ForeignKeyName { get; set; }
public bool Complex { get; set; }
/// <summary>
/// Gets or sets a value indicating whether to initialize this field in the constructor.
/// </summary>
public bool Construct { get; set; }
}
}