오늘 Couchbase .NET SDK 버전 2.3.10을 출시합니다. 이 버전은 데이터 구조 API 및 FTS API를 포함한 버그 수정 및 개선 사항이 포함된 유지 관리 릴리스입니다. 놓치신 경우를 대비하여 .NET Core 지원의 개발자 프리뷰도 준비되어 있습니다. 여기.
새로운 기능 및 변경 사항
저희는 시맨틱 버전 관리를 따르며, 기능을 추가할 때 마이너 버전을 늘려나갑니다. 개발자가 새로운 기능에 쉽게 액세스할 수 있도록 유지 관리 릴리스에서 위험도가 낮은 기능을 커밋되지 않은 인터페이스 안정성으로 추가하기도 합니다. 유지 관리 릴리스에서 추가된 기능은 커밋되지 않은 상태로 변경될 수 있지만 다음 도트 마이너 릴리스에서 커밋으로 승격되어야 합니다.
참조 여기 를 참조하여 .NET SDK의 인터페이스에 대해 설명하세요.
데이터 구조 API 업데이트
2.3.9 릴리스에서 데이터 구조 API를 도입하면서 목록, 지도, 사전에 대한 지원을 추가했습니다. 이번 릴리스에서는 큐에 대한 지원도 추가합니다. 이를 통해 Couchbase에 저장된 JSON 문서를 사용하여 인메모리 큐에서 기대할 수 있는 모든 일반적인 동시성 제어와 함께 정렬된 FIFO 큐를 유지할 수 있습니다. 다음은 큐를 사용하는 방법에 대한 예입니다:
|
1 2 3 4 5 6 |
bucket.QueuePush("my_queue", new Person("Jerry")); bucket.QueuePush("my_queue", new Person("Rodney")); var size = bucket.QueueSize("my_queue"); // 2 var person = bucket.QueuePop("my_Queue"); // Jerry |
또한 커밋되지 않은 데이터 구조 API 개선의 일환으로 일부 메서드 이름이 모든 Couchbase SDK에서 일관성을 갖도록 업데이트되었습니다. 변경 사항은 아래와 같습니다:
| Old | 신규 |
|---|---|
| ListPush | ListAppend |
| ListShift | ListPrepend |
| 목록삭제 | 목록 제거 |
| SetExists | SetContains |
FTS 결과 정렬하기
카우치베이스 서버 4.6의 FTS(전체 텍스트 검색) 기능이 개선되어 사용자가 결과를 반환하기 전에 서버에서 자신의 정렬 기본 설정을 적용할 수 있습니다. 이 작업은 정렬 메서드를 추가해야 합니다. 정렬 필드는 하나 이상 있을 수 있으며, 대시 접두사가 붙은 필드는 내림차순을 나타냅니다.
|
1 2 3 |
var searchParams = new SearchParams(); searchParams.Sort("name", "-age"); |
위의 예제 정렬 기준은 오름차순으로 이름을 정렬한 다음 내림차순으로 나이를 정렬하는 것을 나타냅니다.
N1QL 인덱스 대기 중
SDK를 사용하면 개발자가 프로그래밍 방식으로 N1QL 인덱스를 만들 수 있습니다. 그러나 인덱스는 서버에서 비동기 방식으로 생성되므로 불완전한 인덱스에 대해 쿼리를 실행하는 것은 좋지 않습니다. 이번 릴리즈에서는 SDK가 하나 이상의 인덱스가 '온라인' 상태가 될 때까지 지켜보고 기다렸다가 계속하는 방법을 도입했습니다. 인덱스를 생성하고 온라인 상태가 될 때까지 기다리는 예는 아래와 같습니다:
|
1 2 3 4 5 6 7 |
// Create index called "accounts" on columns "account_id" and "account_name" bucketManager.CreateN1qlIndex("accounts", false, "account_id", "account_name"); // Wait for the index to be marked as 'online', with a 30 second timeout var indexNames = new List { "accounts" }; bucketManager.WatchN1qlIndexes(indexNames, TimeSpan.FromSeconds(30)); |
릴리스 정보
- [NCBC-1104] - SSL 인증서가 올바르게 설정되지 않은 경우 System.ArgumentException이 발생합니다.
- [NCBC-1232] - NET 클라이언트는 인덱스가 제거될 때 자동으로 다시 준비되지 않을 수 있습니다.
- [NCBC-1233] - 2.3.9 어셈블리의 이름이 강력하지 않고 공개키토큰이 없습니다.
- [NCBC-1236] - 통합 테스트에서 해결되지 않은 도트 메모리 참조
- [NCBC-1079] - N1QL용 스트리밍 JSON 파서
- [NCBC-1204] - 버킷 속성에 대한 인터페이스를 사용해야 합니다.
- [NCBC-1237] - FTS에 대한 사용자 지정 "정렬" 매개변수
- [NCBC-1227] - 큐푸시, 큐팝, 큐사이즈를 아이버킷으로 보내기
- [NCBC-1036] - 코드 샘플을 사용하여 프로그래밍 방식으로 클러스터를 프로비저닝하는 방법에 대한 문서 만들기
- [NCBC-1101] - 인덱스 관리를 위한 워치인덱스
받는 방법
항상 그렇듯이 Couchbase .NET SDK는 다음에서 사용할 수 있습니다: