728x90 반응형 Skills/DevExpress9 [Error] This action has been disabled for security reasons. The control cannot serialize complex primary key field values. 해결방법 문제 원인 특정 컨트롤에서는 KeyFieldName을 설정해야 한다. KeyFieldName이란 primary key처럼 row를 unique하게 구분해줄 컬럼을 설정하는 것이다. 그러다 가끔 이런 에러 메세지를 마주한다. This action has been disabled for security reasons. The control cannot serialize complex primary key field values. 이 에러가 발생하는 이유는 serialize, 직렬화하기에 primary key field가 너무 복잡하다는 것이다. 즉, 간단한 number같은 key field로 바꿔달라는 의미이다. (사실, devexpress docs를 보면, string, number를 다 허용한다고 되어있.. 2023. 11. 27. [DevExpress] nvarchar(8) 타입을 Date 타입으로 바인딩하는 방법 nvarchar(8) 타입을 Date 타입으로 바인딩해야 하는 경우 일자를 DB에 저장할 때, nvarchar(8) 데이터 타입으로 저장하곤 합니다. 예를 들어 "20231121" 입니다. 하지만 DevExpress에서 GridViewDataTextColumn로 데이터를 받을 때는 문제가 없지만, GridViewDataDateColumn를 써야 하는 경우가 존재합니다. 예를 들어, 캘린더를 열어야 하는 이벤트가 존재할 경우입니다. 그럴 때, "yyyyMMdd" 형태를 어떻게 Date 타입에 바인딩할 수 있을까요? 아래 코드를 확인해보겠습니다. aspx 코드 이렇게 코드를 넣으면 "20231121" 이런 식으로 바인딩됩니다. OnCustomColumnDisplayText 속성을 사용해서 완전히 랜더링 되기.. 2023. 11. 21. [DevExpress] ASPXGridView 주요 설정 정리 C# 코드 안에서 GridView의 설정을 할 수 있습니다. 주요 설정과 설명은 다음과 같습니다. 모바일 디바이스에서 온 경우인지를 확인 if (Request.Browser.IsMobileDevice): 현재 요청이 모바일 디바이스에서 온 경우인지를 확인하는 조건문입니다. 적응성 모드 설정 gv.SettingsAdaptivity.AdaptivityMode = GridViewAdaptivityMode.HideDataCells;: 모바일 디바이스에서는 데이터 셀을 숨기는 적응성 모드로 GridView를 설정합니다. Header 텍스트 설정 gv.Styles.Header.HorizontalAlign = HorizontalAlign.Center;: GridView의 헤더 셀 텍스트를 가운데 정렬합니다. Grid.. 2023. 11. 20. Javascript 함수를 사용해서 컴포넌트 보이고 숨기게 만들기 이 함수 하나만 사용하면 function close() { ASPxRoundPanel2.SetVisible(!ASPxRoundPanel2.GetVisible()); } 하나의 버튼을 클릭하면, 컨트롤을 보이거나, 사라지게 만드는 기능을 쉽게 사용 가능하다. 이때, ASPxRoundPanel2는 DevExpress 속성 중 ClientInstanceName임을 기억하자. 2023. 11. 9. [Error] Uncaught ReferenceError: ~~~ is not defined Uncaught ReferenceError란 무엇일까? DevExpress를 사용하여 컴포넌트 컨트롤을 호출하다 보면 가끔 이런 에러를 발견할 것이다. 예를 들어, "Uncaught ReferenceError: cpCallback is not defined" 라는 특정 에러 메시지를 발견했다면, 이 에러는 클라이언트 측 코드에서 "cpCallback"이라는 JavaScript 변수나 함수를 인식하지 못하는 경우에 발생한다. 에러 원인 이 에러는 주로 콜백 작업 중에 발생하며 DevExpress 컨트롤에서 PerformCallback(parameter) 메소드를 호출하려고 할 때 발생한다. 더 구체적으로는, 프로퍼티 설정 오류 때문인데, ClientInstanceName 프로퍼티: DevExpress 컨트.. 2023. 11. 9. [Error] A primary key field specified using the KeyFieldName property is not found ASPxGridView, BootstrapGridView, ASPxGridLookup 컨트롤을 사용할 때, 발생할 수 있는 에러이다. Editing. Selection. Master Detail. Endless Paging. 와 같은 ASPxGridView 기능을 사용하고 있다면, KeyFieldName property이 지정되어 있는지 확인해야 한다. 다음 여섯 가지를 확인해보자. data source에서 KeyFieldName property에서 설정한 필드가 존재하는지, 스펠링은 틀리지 않고 정확하게 사용되고 있는지 확인하자. 필드가 public이고 get/set 메서드를 가지고 있는지 확인하자. data source에 변화가 있었을 경우, ASPxGridView.KeyFieldName proper.. 2023. 9. 20. 이전 1 2 다음 728x90 반응형