CodeDomSerializerBase.SerializeToExpression 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 개체를 식으로 serialize합니다.
protected:
System::CodeDom::CodeExpression ^ SerializeToExpression(System::ComponentModel::Design::Serialization::IDesignerSerializationManager ^ manager, System::Object ^ value);
protected System.CodeDom.CodeExpression SerializeToExpression(System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, object value);
protected System.CodeDom.CodeExpression? SerializeToExpression(System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, object? value);
member this.SerializeToExpression : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * obj -> System.CodeDom.CodeExpression
Protected Function SerializeToExpression (manager As IDesignerSerializationManager, value As Object) As CodeExpression
매개 변수
- manager
- IDesignerSerializationManager
serialization에 사용할 대상입니다 IDesignerSerializationManager .
- value
- Object
serialize할 개체입니다.
null일 수 있습니다.
반환
CodeExpression serialize할 수 있는 경우 value 개체입니다. 그렇지 않으면 null.
예외
manager은 null입니다.
설명
매개 변수는 value 기본 식이 반환되는 경우일 수 있습니다 null.
이 메서드는 SerializeToExpression 형식을 직렬화하는 데 다음 규칙을 사용합니다.
먼저 메서드를 GetExpression 호출하여 개체에 대한 식이 이미 만들어졌는지 확인합니다. 그렇다면 기존 식을 반환합니다.
그런 다음 개체의 serializer를 찾아 serialize하도록 요청합니다.
개체 직렬 변환기의 반환 값이 a CodeExpression이면 식이 반환됩니다.
직렬 변환기가 식을 추가했는지 확인하기 위해 GetExpression 마지막 호출을 만듭니다.
마지막으로 .
null
식을 만들 수 없고 적합한 serializer를 찾을 수 없는 경우 serialization 관리자를 통해 오류가 보고됩니다. serializer를 찾았지만 식을 생성하지 못한 경우 오류가 보고되지 않습니다. 이 경우 serializer가 이미 오류를 보고했거나 개체를 serialize하려고 시도하지 않았다고 가정합니다.
serializer가 문 또는 문 컬렉션을 반환한 경우 해당 문은 삭제되지 않습니다. 메서드는 SerializeToExpression 먼저 컨텍스트 스택에서 찾고 StatementContext 문 컨텍스트 개체의 StatementCollection 속성에 문을 추가합니다. 문 컨텍스트가 없으면 메서드는 SerializeToExpression 컨텍스트에서 a CodeStatementCollection 를 찾고 해당 문에 추가합니다. 문을 추가할 위치를 찾을 수 없는 경우 오류가 생성됩니다.
메모
고유한 개체를 serialize할 SerializeToExpression 때 메서드 Serialize 를 호출하면 안 됩니다. 대신 호출해야 합니다 GetExpression. 반환 null하는 경우 고유한 식을 만들고 호출 SetExpression합니다. 그런 다음 나머지 serialization을 진행합니다.