ASP.NET 핸들러 사용시, Session 처리

2.0 기준으로 Ashx를 사용시에

context.Session의 값을 처리할 때 null로 표시되는데,

클래스 선언시에 System.Web.SessionState.IReadOnlySessionState 도 상속 받으면 문제없이 사용가능

public class Handler : IHttpHandler, System.Web.SessionState.IReadOnlySessionState {

public void ProcessRequest (HttpContext context) { context.Session[....] }
}

와 같다.

Tags:

Comments (1)

C#에서 DATA TABLE로 간단한 필터링하기

예전에는 ASP스럽게 RecordSet으로 데이터를 가져와서 하나하나 붙여넣었는데,
요즘은 그냥 SqlDataAdapter를 이용해서 DataTable이나DataSet으로 가져온다음에 Repeater나 DataGrid에 DataSource로 Bind해서 사용중.

그런데 SP를 통해서 데이터를 가져오다 보니, 내가 수정할 수 없는 권한의 SP의 경우 데이터 필터링이나 정렬등이 마음대로 되지 않는다.

찾아보니 역시나 DataTable 형식의 경우 간단한 where과 sort가 지원되어서 데이터를 다시 만드는 것이 가능하다.

select method를 이용하는데,
자세한 내용은 MSDN을 참고

http://msdn.microsoft.com/en-us/library/det4aw50.aspx

sort의 경우는 DataTable의 DefaultView에서 설정이 가능한데 참고로 실제 데이터 인덱스가 바뀌지는 않으니 정렬후에 값을 연산하는 등의 작업은 힘들다.

http://weblogs.asp.net/jcogley/archive/2003/09/15/27567.aspx

Tags:

Comments

MS SQL 2000 -> MS SQL2005 마이그레이션

MSSQL 2005에서 지원하는 Row_number()를 2000(8.0)에서는 지원하지 않아서 페이징하는게 무척 귀찮은데, 이번에 마이그레이션이 필요해서 Full Backup을 받고 Restore하는데 자꾸 에러가 발생.

이유를 찾아보니 보통의 파일백업/복구 로는 복구가 되지 않는단다.. 테이블만 있는거라면 데이터 복사로 해버려도 될거 같은데 수십개의 StoredProcedure가 있는 관계로...

가장 쉬운 방법은 2000에서 마이그레이션 하려는 DB를 Detach한다음에 2005에서 Attach하면 문제없이 복원된다. 이때, 까먹지 말아야 할것은 Attach후에 속성에서 8.0으로 잡혀있는 부분을 2005(9.0)으로 해줄것.

이 경우는 기존의 2000에서 DB가 사라져버리기 때문에 서비스중인 경우에는 복사본 DB를 만들어서 Deatch/Attach하는게 낫다.

다른 방법으로는 Management Studio등에서 테이블 Scheme나 SP를 전부 SQL Text로 뽑아낼수 있는데 그걸로 2005에서 DB구조를만든다음에 2000의 데이터를 Import 해도 된다.

이경우 2000전용의 구문이나 키워드가 있을 경우에 복사가 되지 않는 경우가 있으니 [주의]

Tags:

Comments

« Previous entries ·