using System.Collections.Generic;
public static void Main()
var key1 = new WidgetA{Id = 1, Key = 52};
var key2 = new WidgetA{Id = 1, Key = 102};
var key3 = new WidgetA{Id = 1, Key = 152};
List<WidgetA> list = new List<WidgetA>();
var keyLookup1 = new WidgetB()
{Id = 1, KeyLookup = 50, ValueLookup = "Fifty"};
var keyLookup2 = new WidgetB()
{Id = 2, KeyLookup = 100, ValueLookup = "One hundred"};
var keyLookup3 = new WidgetB()
{Id = 3, KeyLookup = 150, ValueLookup = "One hundred and fifty"};
List<WidgetB> listLookup = new List<WidgetB>();
listLookup.Add(keyLookup1);
listLookup.Add(keyLookup2);
listLookup.Add(keyLookup3);
public int Id { get; set; }
public int Key { get; set; }
public string ValueToGet { get; set; }
public int Id { get; set; }
public int KeyLookup { get; set; }
public string ValueLookup { get; set; }