Скажем, у нас есть такая часть кода, как это:
IProduct product = ProductCreator.CreateProduct(); //Factory method we have here
SellThisProduct(product);
//...
private void SellThisProduct(IProduct product)
{
//.. Do something here
}
//...
internal class Soda : IProduct
{}
internal class Book : IProduct
{}
Как я могу определить, какой продукт фактически передан в метод SellThisProduct() в методе?
Я думаю, что если я скажу GetType() или что-то, это, вероятно, вернет тип IProduct.