C# 날짜 비교 달구하기 Months count

두 날짜 비교해서 달구하기
따로 함수가 없어 만들었는데. 문제는 달마다 마지막 일이 다르다는것
=> MS에서도 모호해서 함수를 만들지 않은 것 같음

public static int MonthAgeFind(DateTime StartDate, DateTime EndDate)
{
int tempMonthCount = 0;
int MonthCount = 0;
bool tempFind = false;

for(int i=0;i<=224;i++) //시작일에 한달씩 더해 종료일보다 큰 더한 달횟수를 구한다. { DateTime tempMonth = StartDate.AddMonths(i); //달더하기 if (tempMonth >= EndDate && tempFind==false) //큰 달 더한횟수구하기
{
tempMonthCount = i;
tempFind = true;

if (tempMonthCount >= 1) //1달 이상이면 교차점에서 시작일이 크면 -1 해준다.
{
DateTime tempStarDate = StartDate.AddMonths(i);
DateTime tempEndDate = EndDate;

if (tempStarDate > tempEndDate)
tempMonthCount = tempMonthCount-1;
}

MonthCount = tempMonthCount;

}
}

return MonthCount;
}