Docs Menu
Docs Home
/ / /
C#/.NET
/ / /

UpdateOne

이 페이지의 내용

  • 개요
  • 샘플 데이터
  • 메서드 및 매개변수
  • 여러 값 업데이트
  • 결합된 업데이트 정의
  • 파이프라인 업데이트
  • 구성 옵션
  • 반환 값
  • 추가 정보
  • API 문서

  • UpdateOne()

  • UpdateOneAsync(): UpdateOne()의 비동기 버전입니다.

다음 섹션에서는 이러한 메서드에 대해 자세히 설명합니다.

참고

메서드 오버로드

이 페이지의 많은 메서드에는 여러 오버로드가 있습니다. The examples in this 가이드 show only one definition of each method. For more information about the available overloads, see the API documentation.

이 가이드의 예에서는 sample_restaurants 데이터베이스의 restaurants 컬렉션을 사용합니다. 이 컬렉션의 문서는 다음 Restaurant, Address, GradeEntry 클래스를 모델로 사용합니다.

public class Restaurant
{
public ObjectId Id { get; set; }
public string Name { get; set; }
[BsonElement("restaurant_id")]
public string RestaurantId { get; set; }
public string Cuisine { get; set; }
public Address Address { get; set; }
public string Borough { get; set; }
public List<GradeEntry> Grades { get; set; }
}
public class Address
{
public string Building { get; set; }
[BsonElement("coord")]
public double[] Coordinates { get; set; }
public string Street { get; set; }
[BsonElement("zipcode")]
public string ZipCode { get; set; }
}
public class GradeEntry
{
public DateTime Date { get; set; }
public string Grade { get; set; }
public float? Score { get; set; }
}

참고

restaurants 컬렉션 의 문서는 대소문자 명명 규칙을 사용합니다. 이 가이드 의 예제에서는 ConventionPack 를 사용하여 컬렉션 의 필드를 파스칼식 대/소문자로 역직렬화하고 Restaurant 클래스의 속성에 매핑합니다.

사용자 지정 직렬화에 대해 자세히 알아보려면 사용자 지정 직렬화를 참조하세요.

이 컬렉션은 Atlas에서 제공하는 샘플 데이터 세트에서 가져온 것입니다. 퀵 스타트를 참조하여 무료 버전의 MongoDB 클러스터를 생성하고 이 샘플 데이터를 로드하는 방법을 알아보세요.

UpdateOne()UpdateOneAsync() 메서드는 다음 매개변수를 허용합니다.

Parameter
설명

filter

데이터 유형: FilterDefinition

update

데이터 유형: UpdateDefinition<TDocument>

options

선택 사항. An 인스턴스 of the UpdateOptions class that specifies the configuration for the 업데이트 operation. The 기본값 value null is.사용 가능한 옵션 목록은 구성 옵션을 참조하세요.

데이터 유형: UpdateOptions

cancellationToken

선택 사항. 작업을 취소하는 데 사용할 수 있는 토큰입니다.

데이터 유형: CancellationToken

Builders.Update.Combine() 메서드를 사용하면 여러 UpdateDefinition 객체를 결합할 수 있습니다. 이 메서드는 다음 매개변수를 허용합니다.

Parameter
설명

updates

데이터 유형: UpdateDefinition<TDocument>[]

var filter = Builders<Restaurant>.Filter
.Eq("name", "Downtown Deli");
var combinedUpdate = Builders<Restaurant>.Update.Combine(
Builders<Restaurant>.Update.Set("cuisine", "French"),
Builders<Restaurant>.Update.Unset("borough")
);
_restaurantsCollection.UpdateOne(filter, combinedUpdate);
var filter = Builders<Restaurant>.Filter
.Eq("name", "Downtown Deli");
var combinedUpdate = Builders<Restaurant>.Update.Combine(
Builders<Restaurant>.Update.Set("cuisine", "French"),
Builders<Restaurant>.Update.Unset("borough")
);
await _restaurantsCollection.UpdateOneAsync(filter, combinedUpdate);

To create an 업데이트 파이프라인, call the Builders.Update.Pipeline() method. 이 메서드는 다음 매개변수를 허용합니다.

Parameter
설명

pipeline

데이터 유형: PipelineDefinition<TDocument, TDocument>

var filter = Builders<Restaurant>.Filter
.Eq("name", "Downtown Deli");
var updatePipeline = Builders<Restaurant>.Update.Pipeline(
PipelineDefinition<Restaurant, Restaurant>.Create(
new BsonDocument("$set", new BsonDocument("cuisine", "French")),
new BsonDocument("$unset", "borough")
)
);
_restaurantsCollection.UpdateOne(filter, updatePipeline);
var filter = Builders<Restaurant>.Filter
.Eq("name", "Downtown Deli");
var updatePipeline = Builders<Restaurant>.Update.Pipeline(
PipelineDefinition<Restaurant, Restaurant>.Create(
new BsonDocument("$set", new BsonDocument("cuisine", "French")),
new BsonDocument("$unset", "borough")
)
);
await _restaurantsCollection.UpdateOneAsync(filter, updatePipeline);

참고

지원되지 않는 작업

UpdateOptions 클래스에는 다음과 같은 속성이 포함되어 있습니다.

속성
설명

ArrayFilters

데이터 유형: IEnumerable

BypassDocumentValidation

데이터 유형: bool?

Collation

데이터 유형: 데이터 정렬

Comment

작업에 대해 사용자가 제공한 설명을 가져오거나 설정합니다. See the MongoDB Server manual for more information.

데이터 유형: BsonValue

Hint

데이터 유형: BsonValue

IsUpsert

데이터 유형: bool

Let

데이터 유형: BsonDocument

The UpdateOne() method returns an UpdateResult, and the UpdateOneAsync() method returns a Task<UpdateResult> 객체. UpdateResult 클래스에는 다음과 같은 속성이 포함되어 있습니다.

속성
설명

IsAcknowledged

MongoDB에서 업데이트 작업을 승인했는지 여부를 나타냅니다.

데이터 유형: bool

IsModifiedCountAvailable

데이터 유형: bool

MatchedCount

데이터 유형: long

ModifiedCount

데이터 유형: long

UpsertedId

드라이버가 업서트를 수행한 경우 데이터베이스에 업서트된 문서의 ID입니다.

데이터 유형: BsonValue

쿼리 필터 생성에 대해 자세히 알아보려면 쿼리 지정 가이드를 참조하세요.

이 가이드 에 설명된 메서드 또는 유형에 대한 자세한 내용은 다음 API 문서를 참조하세요.

돌아가기

Insert