Search This Blog

Thursday, August 4, 2016

GIT - How to revert a faulty merge


git revert -m 1 3c6539c

where 3c6539c is the revision of the faulty merge

Friday, July 29, 2016

Get value from object using Lambda expression

C# > Linq > Expressions > Expression > Compile

Compiles the lambda expression described by the expression tree into executable code and produces a delegate that represents the lambda expression.

Example

Get value from object using Lambda expression

using System;
using System.Linq.Expressions;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{

    public partial class Form1 : Form
    {
        public class Project
        {
            public string Name { get; set; }
            public int Id { get; set; }
        }

        public TProp GetValue(TObj obj, Expression<Func> prop)
        {
            return prop.Compile()(obj);
        }

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            var project = new Project();
            project.Name = "Project 1";
            project.Id = 1;

            int id = GetValue(project, i => i.Id);
            string name = GetValue(project, i => i.Name);

        }
    }

}

SQLITE Get All Tables

SQLITE > Get all tables

SELECT name FROM sqlite_master  WHERE type='table'

Friday, July 8, 2016

SQLite C# Example

C# > SQLite

SQLiteConnection.CreateFile("MyDatabase.sqlite");
SQLiteConnection  m_dbConnection = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;");

m_dbConnection.Open();

string sql = "create table project (name varchar(100), id int)";
SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
command.ExecuteNonQuery();

sql = "insert into project (name, id) values ('project 1', 1)";
command = new SQLiteCommand(sql, m_dbConnection);
command.ExecuteNonQuery();

sql = "select * from project order by id desc";
command = new SQLiteCommand(sql, m_dbConnection);
SQLiteDataReader reader = command.ExecuteReader();
while (reader.Read())

 Console.WriteLine("Name: " + reader["name"] + "\tScore: " + reader["id"]);

Wednesday, June 29, 2016

PlantUML Set ForeColor and BackColor

PlantUML > Set ForeColor and BackColor


Font Color in Participants 


This example will set font color to white and background color to some custom color.

participant "<color:#white>Setup" as Setup #FD9A00

Tuesday, June 7, 2016

C# get property value from object using reflection

C# > Reflection > Property Info > GetValue

Returns the property value of a specified object.

Example

Get property value from object using reflection.


private static object GetPropValue(object src, string propName)
{
   return src.GetType().GetProperty(propName).GetValue(src, null);
}


Tuesday, April 5, 2016

Validate Data Models Using DataAnnotations Attributes C#

C# > System > ComponentModel > DataAnnotations

Provides attribute classes that are used to define metadata.

Example

Validate property class with range numbers



using System;
using System.ComponentModel.DataAnnotations;
using System.Windows.Forms;

namespace WindowsFormsApplication8
{
    public class Person
    {
        private int id;

        [Display(Name = "Person Id")]
        [Range(0, 1000)]
        public int Id
        {
            get { return id; }
            set
            {
                Validator.ValidateProperty(value,
                    new ValidationContext(this, null, null) { MemberName = "Id" });
                id = value;
            }
        }
    }
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Person p = new Person();
            p.Id = 1;
            p.Id = 1001;
        }
    }
}