public void DefaultTo(string key, object value, dynamic item) { if (!ItemContainsKey(key, item)) { var dc = (IDictionary<string, object>)item; dc[key] = value; } }