public class Person
{
public Person(string name, string gender = "Unknow", int age = 18) { }
}
var p1 = new Person("Bruce"); // only primary parameter
var p2 = new Person("Bruce", "Male"); // one optional parameter
var p3 = new Person("Bruce", "Male", 20); // all parameters
var p4 = new Person("Bruce", age: 20); // specified optional parameters
Dynamic Support
dynamic foo = 123; foo = "foo"; dynamic p = new System.Dynamic.ExpandoObject(); p.age = 20; p.name = "bruce";