c# 시간비교하기 datetime과 timespan 이용... 여러가지 비교

이거가지고 삽질 많이 했는데....
딱 이거다 하는 자료가 거의 안 보였었다.

우리나라 C#하는 사람들이 별로 없어서 그런걸까..
C#을 하는 사람이 없다기보다는.. C#으로 윈도우 프로그램을 만드는 사람이 별로 없는 것 같다.
델파이보다 오히려 더 적을지도...
아마추어들이 하려면 C++에 api mfc 핥아먹고 바로 C#으로 넘어오는 편이 더 나을 것 같은데...

--------

private void button1_Click(object sender, EventArgs e)
{
  TimeSpan asef = new TimeSpan(15,30,00);
  Console.WriteLine(asef);
  Console.WriteLine(DateTime.Now.Add(asef));//현재시간에 15시간을 더하기
  Console.WriteLine(DateTime.Now.TimeOfDay);//0시부터 현재시간까지를 TimeSpan값으로 반환
  Console.WriteLine(TimeSpan.Parse("15:30:00"));//TimeSpan값을 지정.. 문자열
}
DateTime과 TimeSpan 둘 다 시간을 표현한다.
다른점은...
DateTime은 몇월몇일몇시몇분을 달력이나 시계를 표현하고
TimeSpan은 1시간, 2시간,,,... 이런걸 표현한다고 할까..
시간과 시각?
전자시계 개념으로 설면하자면... 10분짜리 타이머를 맞춘다면... 
TimeSpan.. 알람을 맞추면..DateTime이렇게 보면 쉬울까...
DateTime - DateTime은 TimeSpan자료형이 된다.
(DateTime)2011년 2월 16일 21시 - (DateTime)2011년 2월 16일 15시 = (TimeSpan)6시간
위의 소스코드만으로도 설명은 충분할 것 같지만.... 추가하자면...
8시부터 뭔가를 실행시키고 싶다! 라고 한다면....
타이머 돌리고... System.Windows.Forms.Timer fajklefjl = new [tab] ();
if(DateTime.Now.TimeOfDay >TimeSpan.Parse("08:00:00"))
{}
 

C# UserComponent 쓸때 Object reference not set to an instance of an object: 오류경험처리

//에러가 발생했던 초기상태
public static string[] strArr주식코드;
public static string[] strArr옵션코드;
public static string[] strArr주식선물코드;
public static string[] strArr주식옵션코드;
문자열 클래스를 만들어놓고 생성자가 뜨면 이것들을 한번에 초기화 시켜주는 형태로 만들었다.
null 어쩌고 오류가 떴다. 근데 처음부터 떴으면 진작에 고쳐놨을건데 어이없게도 한참 잘 돌아가다가 그냥 갑자기 뜬다.;;;

어쨌든 그래서 눌들을 없애줬다.
프로그램 제일 앞부분에 이 클래스의 생성자를 호출 해 주기 때문에 순서상으로는 문제가 없지만....
비주얼 스튜디오가 이거 안하면 유저 컴포넌트를 안 띄워준다니까 할 수 없지..

//수정후
public static string[] strArr주식코드 = { "", "" };
public static string[] strArr옵션코드 = { "", "" };
public static string[] strArr주식선물코드 = { "", "" };
public static string[] strArr주식옵션코드 = { "", "" };
대충 초기화시켜줬다. 에러는 없어졌다.
어차피 생성자 뜨면서 값도 변경되니까 아무거나 넣어도 상관도 없고... 
어쨌든 한 20분쯤 골치 썪은 것 같다.
외국 커뮤니티 보니까 예외처리를 해버리라는 말도 있고 그랬는데...

값을 선언할 때는 무조건 초기화를 시켜놓자... 특히 static은

int int숫자= 0;

string str문자열=""

c#는 한글로 변수명이 잘 만들어져서 자주 사용하는데... 편하다.

호환이 안된다는 말도 있던데... 뭐 혼자 쓸거니까

그리고 어차피 한국에서만 쓴다면 문제 없을듯....