[Fork] Object Copying

CSharp · Console

/Program.cs

using System;
					
public class Program
{
	public static void Main()
	{
		var customer = new Customer();
		customer.Name = "Bob";
		customer.SSN = "123-45-6789";
		customer.Addresses = "123 Street";
		
		CustomerData cd = (CustomerData)customer;
		CustomerData cd2 = customer.ToCustomerData();
		
		Console.WriteLine(cd.Name + " " + cd.Addresses);
	}
}

public class Customer
{
	public string Name { get; set; }
	public string SSN { get; set; }
	public object Addresses { get; set; }
	
	
	//ToOtherType method
	public CustomerData ToCustomerData(){
		var customerData = new CustomerData();
		customerData.Name = Name;
		customerData.Addresses = Addresses;
		return customerData;
	}
	
	//operator
	public static explicit operator CustomerData(Customer c){
		var customerData = new CustomerData();
		customerData.Name = c.Name;
		customerData.Addresses = c.Addresses;
		return customerData;
	}
}


public class CustomerData
{
	public string Name { get; set; }
	public object Addresses { get; set; }
}
;