System.Xml.Serialization
을 사용하여 객체를 XML로 직렬화하기 때문에 매개 변수없는 생성자가 필요합니다.생성자가 실행되기 전에 개체 초기화 구문을 사용하여 속성에 값을 할당 할 수 있습니까?
따라서 개체 초기화 구문을 사용하여 특정 속성에 값을 할당 한 다음 개체를 XML로 직렬화하기 전에 필요에 따라 생성자 논리를 사용하여이 값의 서식을 지정하려고합니다.
제 문제는 속성에 값이 할당되기 전에 생성자가 실행된다는 것입니다. 생성자 로직 실행을 볼 수 있듯이
다음 속성 값을 할당됩니다
class Program
{
static void Main(string[] args)
{
Foo myFoo = new Foo() { HelloWorld = "Beer", HelloWorldAgain = "More beer" };
Console.WriteLine(myFoo.HelloWorld);
Console.WriteLine(myFoo.HelloWorldAgain);
Console.ReadLine();
}
}
public class Foo : Bar
{
public string HelloWorld { get; set; }
public Foo()
{
Console.WriteLine("Foo Was Initialized");
Console.WriteLine(HelloWorld);
}
}
public abstract class Bar
{
public string HelloWorldAgain { get; set; }
public Bar()
{
Console.WriteLine("Bar was initialized");
Console.WriteLine(HelloWorldAgain);
}
}
이 다음과 같은 출력 결과 : 단순화 된 예는 다음과 같습니다. 나는 다른 방향으로 일할 필요가있다.
이것이 가능합니까?
어떤 종류의 사전 직렬화 형식을 사용하려고합니까? –
ID를 전달한 다음 데이터베이스에 대한 쿼리를 실행하여 다양한 정보를 가져 와서 자동 속성에 이러한 정보를 할당하면 생성자 내에서이 작업을 수행하는 것이 더 편할 것이라고 생각했습니다 – JMK