using System;
public interface IViewBase
{
}
public class AView : IViewBase
public class BView : IViewBase
public class Program
private void ShowOtherView<T>(object parameter) where T : IViewBase
private void Test1(Action<object> onShowOtherView)
private void Test2(Action<IViewBase, object> onShowOtherView)
private void Main()
Test1((param) => ShowOtherView<AView>(param));
Test2((view, param) => ShowOtherView<view>(param)); // bisa kah oper T nya?