rendered paste body public class GenerateSQL
{
/// <summary>
/// Generates the specified object.
/// </summary>
/// <param name="Object">The object.</param>
/// <returns></returns>
public static string Generate(object Object)
{
StringBuilder objBuilder = new StringBuilder();
StringBuilder objBuilder2 = new StringBuilder();
Type type = Object.GetType();// Get object type
object[] obj = type.GetCustomAttributes(true);
for (int i = 0; i < obj.Length; i++)
{
if (obj[i] is Attributes.Table)
{
objBuilder.Append("CREATE TABLE " + ((Technique.Framework.Sql.Attributes.Table)(obj[i])).Name + " ( ");
}
}
Type type2 = Object.GetType();
PropertyInfo[] objPropertyInfo = type2.GetProperties();
for (int iCount = 0; iCount < objPropertyInfo.Length; iCount++)
{
object[] obj2 = objPropertyInfo[iCount].GetCustomAttributes(true);
for (int ii = 0; ii < obj2.Length; ii++)
{
if (obj2[ii] is Attributes.Identity)
{
objBuilder.Append(((Technique.Framework.Sql.Attributes.Identity)(obj2[ii])).Column + " int identity,");
objBuilder2.Append("Primary Key" + " (" + ((Technique.Framework.Sql.Attributes.Identity)(obj2[ii])).Column + ")");
}
if (obj2[ii] is Attributes.Field)
{
if (((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).DataType == System.Data.SqlDbType.Bit)
{
objBuilder.Append(((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Column + " " + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).DataType + ",");
}
else if (((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).DataType == System.Data.SqlDbType.DateTime)
{
objBuilder.Append(((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Column + " " + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).DataType + ",");
}
else if (((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Unique == false && ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).AllowNull == false)
{
objBuilder.Append(((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Column + " " + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).DataType + "(" + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Lenght + ") NOT NULL,");
}
else if (((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Unique == true && ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).AllowNull == false)
{
objBuilder.Append(((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Column + " " + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).DataType + "(" + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Lenght + ")Unique NOT NULL,");
}
else if (((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Unique == true && ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).AllowNull == true)
{
objBuilder.Append(((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Column + " " + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).DataType + "(" + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Lenght + ")Unique,");
}
else
{
objBuilder.Append(((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Column + " " + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).DataType + "(" + ((Technique.Framework.Sql.Attributes.Field)(obj2[ii])).Lenght + "),");
}
}
}
}
objBuilder2.Append(")");
string strSql = objBuilder.ToString() + objBuilder2.ToString();
return strSql;
}
}