Back-End를 개발하다보면, JSON을 이용해서 웹 서버와 데이터를 자주 주고 받습니다. 보통 Front-End 영역에서 Javascript를 이용해서 ajax로 Web API를 호출 하곤 하는데요. 이때 데이터 포멧을 JSON을 이용합니다. 그러다 보면, 빈번히 Javascript 객체를 String 으로 변경하였다가, 다시 객체로 변환하는 경우가 발생하는데요. 이를 쉽게 해주는 메소드입니다. JSON.stringify() JSON 의 일반적인 용도는 웹 서버와 데이터를 주고 받는 것 입니다. 웹 서버로 데이터를 보낼 때 데이터는 문자열이여야 하며, JSON.stringify()를 사용해서 Javascript 객체를 문자열로 변환 할 수 있습니다. var obj = { name: "John", ag..
C#을 이용해 개발 중이라면, 간혹 실행중인 코드에 대한 호출자정보를 찾아야 할 경우가 있습니다. Method 이름, 실행중인 파일, 또는 행 번호와 같은 구체적인 호출자정보 일 수 있습니다. 저는 주로 이런한 내용이 필요했던 경우는 실행중인 프로그램내에서 발생한 Log를 남길 경우, 어느 파일, 어느 Method 에서 발생한 오류인지를 남기 위해서 필요했습니다. 좀 더 빠른 파악이 가능하고, 체계화된 프로세스를 이용중이라면 빠른 디버깅이 가능하기 때문입니다. 이를 위해서 호출자정보를 찾던 도중 .NET Framework 4.5에 추가된 CallerMemberAttribute 에 대해서 알게 되었습니다. 기존에는 Reflection 을 이용해서 처리 하였지만, Reflection이 관련된 경우 현재 코드..
코딩을 하다보면, 컨텐츠의 타입을 결정하는 부분을 Enum 을 이용해서 정의하는 편입니다. DB에 저장된 데이터 및 기획데이터들과 유효성을 체크해야 하는 부분이 존재하는데요. 이때 검사를 유용하게 하는 방법을 정리하였습니다. 현재 저희 프로젝트에서 사용하고 있는 각 스테이지의 승리여부를 결정하는 Enum 값 입니다. /// /// 스테이지 승리여부 /// public enum STAGE_WIN_TYPE { /// /// 승리 /// WIN = 0, /// /// 패배 /// LOSE = 1, /// /// 비김 /// DRAW = 2, /// /// 포기 /// GIVEUP = 3, } 해당 Enum 값을 이용해서, 데이터의 유효성을 체크 하는 부분에 IsDefined Method를 이용하면 간편하게 값..
인터페이스와 다형성 인터페이스에 속한 메서드는 모두 가상 메서드에 속한다. C# 컴파일러가 인터페이스의 메서드를 가상 메서드로 간주하기 때문에 virtual 예약어를 일부러 지정하지 못하게 막고 있다. 인터페이스를 상속받은 자식 클래스에서도 해당 메서드에 override 예약어를 지정하지 못하게 막는다. virtual/override 예약어를 막는다기보다는 굳이 그럴 필요가 없으니 표시하지 못하게 한다는 표현이 더 어울린다. 인터페이스의 메서드는 가상 메서드이기 때문에 다형성의 특징이 그대로 적용된다. 인터페이스를 이용한 콜백 인터페이스에 포함된 메서드는 상속된 클래스에서 반드시 구현한다는 보장이 있다. 이런점을 이용해서 콜백 구현이 가능하다. 간단한 예제 간단한 예제를 하나 생성해서, Log를 찍기위해..
머리속에 기억해두자니, 자주 사용하지는 않고~ 그렇다고 안필요하진 않은! 이 포맷팅!! 먼저 숫자 형식에 대한 포맷팅을 먼저 정리했습니다. 숫자형식 포맷팅을 이용하면 숫자로 이루어진 문자열을 다양한 형태로 출력 할 수 있습니다. 기본적으로 이 포맷팅은 System. String.Format 매서드에 기반하여 적용됩니다. 형식지정자 종류 예제코드 출력결과 C / c 통화 Currency Response.Write(string.Format("{0:C}", 2.5)); ₩3 Response.Write(string.Format("{0:C}", -3.5)); -₩4 D / d 10진법 Decimal Response.Write(string.Format("{0:D}", 00035)); 35 E / e 과학적지수 Sc..
실무진에서 이벤트 관련한 코딩을 진행하다 보면, 가장 많이 접하게 되는 것이 시간 및 날짜의 차이를 구하는 구문이 아닐까 생각이 든다. 간단하게 ASP.NET 안에서 C# 구문을 이용하여 날짜, 시간, 분, 초의 차이를 구하는 구문을 만들어 보았다. 차이 구하기 DateTime StartDate = Convert.ToDateTime("2012-05-07 08:00:00"); DateTime EndDate = Convert.ToDateTime("2012-05-10 10:20:30"); TimeSpan dateDiff = EndDate - StartDate; int diffDay = dateDiff.Days; int diffHour = dateDiff.Hours; int diffMinute = dateDif..