// List 를 선언하고

            List<person> pList = new List<person>()
            {
                new person(){Name="a", Age=1},
                new person(){Name="b", Age=2},
                new person(){Name="c", Age=3},
                new person(){Name="d", Age=4}
            };

 

  // Foreach 에서 수행할 Action 을 정의

            Action<person> print = person => { Console.WriteLine("{0},{1}",person.Name, person.Age); };

 

            // 수행

            pList.ForEach(print);

 

  // Action 을 정의하지 않고 아래와 같이 쓸수도 있다. 위 두줄이 한줄로

  pList.ForEach(person => Console.WriteLine("{0},{1}",person.Name, person.Age));

 

결과

a,1
b,2
c,3
d,4

 

버튼등의 클릭시 특별한 처리가 없이 간단한 경우 아래처럼 익명 이벤트를 이용하여 코드를 간소화 할 수 있다.

 

btnTest.Click += (src, e) => Console.WriteLine("btnTest Click");

 

결과

btnTest Click

 

기본적으로 제공하는 함수이외에 추가적이 함수가 필요한 경우 확장 메서드를 이용해

이 문제를 해결할 수 있다.

 

만약 DateTime 에서 마이크로세컨드 까지 나타내는 string 을 나타내는 함수를 추가하고자 한다면

 

먼저 확장 메서드를 선언

 

    public static class Extension
    {
        public static string ToLastEventTime(this DateTime dt)
        {
            return dt.ToString("yyyy-MM-dd hh:mm:ss,ffffff");
        }
    }

 

아래와 같이 사용한다.

 

     DateTime dt = DateTime.Now;
     string microDateString = dt.ToLastEventTime();

 

결과 : 2014-10-31 10:27:01,018000

+ Recent posts