테스트 사이트 - 개발 중인 베타 버전입니다

성능향상을 위한 팁-5

· 15년 전 · 915
eval() 사용 자제 ... & JSON Serialize & Page Method (?)
  • AJAX => UI(XHTML + CSS), Program(Javascript), 통신방식(XML)
    • XML은 대용량 데이터일 경우 성능저하되므로 ... JSON 직렬화 사용
    • eval()은 보안에 취약(XSS) → JSON 파서 이용

 

  • Server <==== serialize ====> Client (?)

string json = null;

using (MemoryStream ms = new MemoryStream())  {
    DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
    serializer.WriteObject(ms, obj);
    json = Encoding.UTF8.GetString(ms.ToArray());
}

 

==============================================================================================================

 

// {"<Completed>k__BackingField":true,"<Message >k__BackingField":"Pietschmann"}

[Serializable]
public sealed class BoardProcessResult
{
   public bool Completed { get; set; }
   public string Message { get; set; }
}

 

---------------------------------------------------------------------------------------

 

// {"Completed :true,”Message":"Pietschmann"}

[DataContract]
public sealed class BoardProcessResult
{
    [DataMember]
    public bool Completed { get; set; }
    [DataMember]
    public string Message { get; set; }
}

  • Page Method (?)
    • Server side 메서드를 Javascript로 바로 사용가능
    • ASP.NET을 Static으로...
       
[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
755
21562
21559
754
750
749
13899
745
741
739
728
21546
21536
25342
21500
725
722
713
21483
21464
709
706
25340
25338
25335
698
681
679
676
25333
673
13894
13891
664
655
21451
642
25332
21447
29541
21430
21423
13889
638
627
29540
623
621
617
612
607
25331
600
13886
21405
592
13879
591
583
13868
25317
581
21402
576
13866
21365
21362
21359
21354
25313
21346
13865
570
567
21317
13860
25309
13859
21297
25307
559
13855
21291
13853
21288
13852
13851
21279
550
25306
545
13846
534
21274
25297
21265
25295
21262
21257
21250