Inheritance: System.Windows.Forms.Form
        public static void Main()
        {
            // 1. Step Configure and Initialize ActiveRecord:

            // If you want to use the InPlaceConfigurationSource:
            // Hashtable properties = new Hashtable();
            // properties.Add("hibernate.connection.driver_class", "NHibernate.Driver.SqlClientDriver");
            // properties.Add("hibernate.dialect", "NHibernate.Dialect.MsSql2000Dialect");
            // properties.Add("hibernate.connection.provider", "NHibernate.Connection.DriverConnectionProvider");
            // properties.Add("hibernate.connection.connection_string", "Data Source=.;Initial Catalog=test;Integrated Security=SSPI");
            // InPlaceConfigurationSource source = new InPlaceConfigurationSource();
            // source.Add(typeof(ActiveRecordBase), properties);

            // We are using XmlConfigurationSource:
            XmlConfigurationSource source = new XmlConfigurationSource("../appconfig.xml");

            ActiveRecordStarter.Initialize( source, typeof(Blog), typeof(Post), typeof(User) );

            // 2. Create the schema

            // If you want to let AR to create the schema
            if (MessageBox.Show("Do you want to let ActiveRecord create the database tables?", "Schema", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                ActiveRecordStarter.CreateSchema();
            }

            // 3. Create the first user (so you can log in)

            if (User.GetUsersCount()== 0)
            {
                User user = new User("admin", "123");

                user.Create();
            }

            // 4. Bring the Login Form

            using(LoginForm login = new LoginForm())
            {
                if (login.ShowDialog() != DialogResult.OK)
                {
                    return;
                }
            }

            // 5. Show the main form

            using(BlogManagement mainForm = new BlogManagement())
            {
                Application.Run(mainForm);
            }
        }