본문 바로가기

2016/11

Expressions 과 Expression Builders ASP.NET 에서 Expressions 는 지정된 데이터 값을 반환하기 위해 런타임에서 파싱되는 특정 구문에 해당합니다. 이를 테면 SqlDataSource 컨트롤 사용시 ConnectionString 속성에 DB연결정보 제공을 위해서 다음과 같은 형태의 값을 지정하곤 했는데 이것이 바로 Expressions 에 해당합니다. ASP.NET 은 aspx 페이지를 파싱할때 SqlDataSource 컨트롤에서 내용이 포함된 구문을 발견하면 Web.config 로 부터 데이터베이스 연결정보를 가져옵니다. 이때 Expressions 에 사용된 ConnectionStrings 라는 접두사는 ConnectionStringsExpressionBuilder 클래스를 사용해 해당 Expressions 을 파싱할것을 알려.. 더보기
웹 UI 테스트 - WebUITester WebUITester는 반복적으로 진행되는 웹입력단 테스트를 자동화하는 UI입력 테스트 프로그램입니다. 여기 한가지 사례를 들어 WebUITester를 활용할 수 있는 방안을 알아보고자 합니다. 이것은 한 웹사이트의 회원가입양식입니다. 실제 이런모양의 회원가입양식이 존재하지는 않지만 테스트를 위해 임의로 HTML을 코딩해서 만든것이니 그렇구나 하고 넘어가도록 합시다. 개발자는 위 양식을 기본으로 입력처리가 잘 되는지 테스트를 진행해야 합니다. 테스트는 프로그램에 다양한 입력형태(값의 변화에 따른)로 필요한 내용를 입력하여 테스트를 진행해야 하며 혹시라도 입력양식이 변경되면 변경이후의 테스트도 수행해야 합니다. 문제는 그때마다 개발자는 각각의 입력칸에 내용를 입력하고 '확인'버튼을 눌러 입력한 데이터가 목.. 더보기
[ASP.NET] 현재 접속자 수 확인(표시) ASP.NET의 Membership API를 이용하면 현재 접속자수를 손쉽게 파악할 수 있습니다. Response.Write(string.Format("현재 접속자 {0} 명", Membership.GetNumberOfUsersOnline().ToString())); . 만약 현재가 아닌 최근 몇분 동안의 접속자를 파악하려면 web.config에서 다음과 같이 membership 요소의 userIsOnlineTimeWindow 속성에 원하는 시간을 설정하면 됩니다. 이 설정은 최근 5분 동안의 로그인 사용자를 표시할 것입니다. Membership API이므로 웹사이트의 프로젝트 회원관리자체가 Membership API를 통해 처리되는 방식이어야 합니다. 더보기
[C#] System.IO.File System.IO.File은 파일 입출력 전용의 FileStream클래습니다. 이 클래스는 파일 처리를 위한 여러 정적메소드를 제공하는데 이들 메소드를 활용하면 간단한 파일처리작업을 손쉽게 구현할 수 있습니다. 우선 파일을 여는 메소드부터 살펴보겠습니다. using (System.IO.FileStream fs = System.IO.File.Open(@"C:\text.txt", System.IO.FileMode.Open)) { } 파일을 열어 FileStream형식으로 반환합니다. 이 후 FileStream과 동일하게 취급할 수 있습니다. using (System.IO.StreamReader ss = System.IO.File.OpenText(@"C:\text.txt")) { } 파일을 열어 StreamR.. 더보기
[Ubuntu bash] 최신배포판 업데이트및 완전삭제 Windows 10 (1607) 최신 업데이트버전 부터는 우분투의 bash쉘을 지원하기 시작했습니다. 그런데 현재 배포판기준이 10.04 버전입니다. 이걸 최신판으로 업데이트하는 방법을 알아보고자 합니다. 우선 아래 명령으로 sources.list파일을 열어봅니다. vim /etc/apt/sources.list 그러면 대략 아래와 같거나 비슷한 내용이 나올것입니다. 이 파일의 내용을 다음과 같이 수정합니다. deb http://kr.archive.ubuntu.com/ubuntu yakkety main restricted universe multiverse deb http://kr.archive.ubuntu.com/ubuntu yakkety-updates main restricted universe mul.. 더보기
[C#] 확장 메서드(Extension Method) - 1 Box라는 제품에 대한 개체를 List로 반환해주는 다음 클래스가 있습니다. public class Box { public string Name { get; set; } public int Size { get; set; } public int Price { get; set; } } public class Boxes { public List B { get; set; } } Boxes 클래스는 외부에서 공급받은 클래스가 소스가 없다고 가정해 보겠습니다. 그런데 이 클래스에 현재 존재하는 각 제품의 가격합계를 모두 구하는 메서드를 작성해야 한다면 이때 확장 메서드를 유용하게 사용할 수 있습니다. public static class MyBoxes { public static int TotalPrice(this .. 더보기