2010. 5. 4. 11:17

RegExp를 이용하여 문자열 정규식 검사를 할 수 있다.

<%
Dim StringToSearch 
StringToSearch = "http://www.foo.com"

Set RegularExpressionObject = New RegExp

With RegularExpressionObject
    .Pattern = ".com"
    .IgnoreCase = True
    .Global = True
End With

expressionmatch = RegularExpressionObject.Test(StringToSearch)
If expressionmatch Then
    Response.Write RegularExpressionObject.Pattern & " was found in " & StringToSearch
Else
    Response.Write RegularExpressionObject.Pattern & " was not found in " & StringToSearch
End If
%>


RegExp 개체에는 Test 수를 제외한 Execute Replace 함수도 포함하고 있다. 

자세한 자료는 아래 링크를 참고한다.



Posted by CoolDragon
2010. 4. 29. 17:09
어디서나 빠지지 않고 사용되는 페이징

참고 안하고 만들여보려니 절라 빡시단걸 알게 됐다.
이거 잘 만든 소스인지는 잘 모르겠네만.. 내가 만든거니 이거 쓸란다.ㅋㅋ

[결과]


[샘플]
Posted by CoolDragon
2010. 4. 26. 17:31
HTTP Header를 이용한 파일 다운로드

ASP.NET도  거의 코드가 동일한 가능하다.

Response.Clear()
Response.AddHeader("Content-Disposition", "attachment; filename=" & file.Name)
Response.AddHeader("Content-Length", file.Length.ToString())
Response.ContentType = "application/octet-stream"
Response.WriteFile(file.FullName)
Response.End
Posted by CoolDragon
2010. 4. 20. 18:10
asp에서 다른 도메인(Cross Domain)의 데이터를 주고 받기 위한 방법으로도 사용된다.
(다른 방법으로는 JSONP를 이용할 수 있다.)

1. C#. XMLWebService 프로젝트로 XML 웹서비스를 개발한다.
  - 도메인 : ws.cooldragon.co.kr
2. asp에서 웹서비스를 호출하는 클라이언트 페이지를 개발한다.
  - 도메인 : www.cooldragon.co.kr
3. 개발된 사이트를 IIS를 설정한다.
4. 브라우저에서 테스트 해본다.
※ ws.cooldragon.co.kr, www.cooldragon.co.kr 은 가상의 도메인이며
   예외 처리는 개발자의 몫으로 돌린다. ^^;;
-------------------------------------------------------------------------

1. [XML 웹서비스 개발]
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    public class Service1 : System.Web.Services.WebService
    {
        [WebMethod]
        public string HelloWorld()
        {
            return "Hello World";
        }

        [WebMethod]
        public string SayHello(string name)
        {
            return "Hello " + name;
        }

        [WebMethod]
        public int Sum(int x, int y)
        {
            return x + y;
        }

        [WebMethod]
        public int Subtract(int x, int y)
        {
            return x - y;
        }
    }


2. [asp 개발]
<%
' 구현부
Dim reqTy
Dim url
Dim param

url = "http://ws.cooldragon.co.kr/Service1.asmx/SayHello"
param = "name=cooldragon"
Response.Write "result=" & CallWebService(url, param) & "<br/>"

url = "http://ws.cooldragon.co.kr/Service1.asmx/Sum"
param = "x=1&y=2"
Response.Write "result=" & CallWebService(url, param) & "<br/>"

url = "http://ws.cooldragon.co.kr/Service1.asmx/Subtract"
param = "x=1&y=2"
Response.Write "result=" & CallWebService(url, param) & "<br/>"

url = "http://ws.cooldragon.co.kr/Service1.asmx/HelloWorld"
param = ""
Response.Write "result=" & CallWebService(url, param) & "<br/>"
...

'웹서비스 호출 함수
Function CallWebService(url, param)

    Dim result
Dim xmlhttp
Set xmlhttp = Server.CreateObject("MSXML2.XMLHTTP")
    xmlhttp.Open "POST", url, false
    xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    xmlhttp.send param
    
    result = xmlhttp.responseText
    set xmlhttp = nothing    
           
    CallWebService = result

End Function 
%>


3. IIS 설정
   - www.cooldragon.co.kr

  - ws.cooldragon.co.kr

4. 실행결과를 확인할 수 있다.


참고URL :
http://www.codeproject.com/KB/asp/Web_Service_Call_From_ASP.aspx
Posted by CoolDragon
2010. 4. 13. 11:23
asp.net ajax control toolkit를 사용하고자 한다면 
ScriptManager 관련 스크립트를 선언해주어야 한다.

아래와 같은 스크립트중 한가지를 사용하면 된다.

<asp:ScriptManager ID="ScriptManager1" runat="server" />
 - asp.net 에서 기본으로 제공

<ajaxToolkit:ToolkitScriptManager ID="ScriptManager1"  runat="server" />
 - ajax control toolkit 설치후 사용

그리고 두가지의 차이점은 정확히 모르는 관계로 성능적인 측면에 관련된 블로그를 참고하면 되겠다~
아래 성능으로만 보면 ajaxToolkit을 사용하는게 나은거 같은데 무조건 조은건지.... 해석해야하나..ㅋ


* 사용에 따른 Rendering


* Rendering에 따른 파일 다운로드
Posted by CoolDragon
2010. 4. 7. 20:03
asp.net에서 마스터페이지에 아래와 같이 설정이 되어있더라도
<form id="form1" runat="server">
..
</form>

렌더링된 결과를 보면  form태그의 id는 aspnetForm으로 자동 변경된다.
이를 방지하고 자신이 값으로 id를 지정하고 싶다면.. 첨부한 파일을 참고하길 바란다~

그럼 화이팅~
Posted by CoolDragon
2010. 4. 2. 12:44
c#문법으로 작성된 코드~

// 유입경로
Response.Write("HTTP_REFERER=" + Request.ServerVariables["HTTP_REFERER"]);
Response.Write("<br/>");
Response.Write("AbsoluteUri=" + Request.UrlReferrer.AbsoluteUri);
Response.Write("<br/>");
            
// 클라이언트 IP
Response.Write("REMOTE_ADDR=" + Request.ServerVariables["REMOTE_ADDR"]);
Response.Write("<br/>");            
Response.Write("UserHostAddress=" + Request.UserHostAddress);
Response.Write("<br/>");
            
// 사용 브라우저 체크
Response.Write("HTTP_USER_AGENT=" + Request.ServerVariables["HTTP_USER_AGENT"]);
Response.Write("<br/>");
Response.Write("Browser=" + Request.Browser.Browser);
Response.Write("<br/>");

// 브라우저의 사용 언어
Response.Write("http_accept_language=" + Request.ServerVariables["http_accept_language"]);
Response.Write("<br/>");
Posted by CoolDragon
2009. 11. 2. 10:26
ASP.NET에서 동적으로 자바스크립트를 추가하기는 어렵지 않다.




[비하인드 코드]

        protected void Page_Load(object sender, EventArgs e)
        {
            // <form> 태그 뒤에 include되는 자바스크립트 파일 포함
            ClientScript.RegisterClientScriptInclude(typeof(Page), "script", "http://localhost/test.js");
            // <form> 태그 뒤에 자바스크립트 포함
            ClientScript.RegisterClientScriptBlock(typeof(Page), "script1", "<script>test('test1');</script>");
            // </form> 태그 앞에 자바스크립트 포함
            ClientScript.RegisterStartupScript(typeof(Page), "script2", "<script>test('test2');</script>");
        }


[소스보기 코드]
...
<form name="form1" method="post" action="WebForm2.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE2MTY2ODcyMjlkZL22/OKqbu9X9AK4DAtdxYHrs6Rj" />
</div>
<script src="http://localhost/test.js" type="text/javascript"></script>
<script>test('test1');</script>
    <div>
    .......
    </div>
   
<script>test('test2');</script>
</form>
.....


단.. 유념해야할 사항은 여는 form태그에 뒤에 생성되냐 닫는 form 태그 앞에 생성되냐에
따라 정상적으로 실행되는 자바스크립트가 있을수도 있지만 html이 생성되지 않은 컨트롤에
접근하는 코드가 존재하면 오류가 발생할 수도 있다.
Posted by CoolDragon
2009. 6. 30. 10:39

ASP.NET 페이지 라이프 사이클
http://msdn.microsoft.com/en-us/library/ms178472.aspx

마스터페이지와 컨텐트 페이지의 이벤트 순서

이벤트 순서

Module + 페이지 라이프 사이클
Posted by CoolDragon