You can pass an expression into another constructor as follows:
using System;
public class Wine{
public decimal Price;
public int Year;
public Wine(decimal price){Price = price;}
public Wine(decimal price, int year) : this(price) {Year = year;}
public Wine(decimal price, DateTime year) : this (price, year.Year) {}
}
In the book - "Any methods that you call on it are likely to fail. It can, however, call static methods.
My question is "Why"?