これは機能しません:
public interface IServerFuncs
{
Table<T> getTable<T>() where T : MasterClass;
//*cut* other stuff here
}
public class DefaultFuncs<T> : IServerFuncs where T : MasterClass
{
Table<T> table;
public DefaultFuncs(Table<T> table)
{
this.table = table;
}
public Table<T> getTable()
{
return table;
}
}
それは言うDefaultFuncs<T>' does not implement interface member 'IServerFuncs.getTable<T>()'
しかし、私もこれを行うことはできません:
public Table<T> getTable<T>() where T:MasterClass
{
return table;
}
それは言いError: Cannot implicitly convert type 'MySQLCache.Table<T>
ます。メソッド内のTがと衝突するとDefaultFuncs<T>
思うので、次のことを試しました。
public Table<T2> getTable<T2>() where T2:MasterClass
{
return table;
}
しかし、別のエラーが発生します。Error Cannot implicitly convert type 'Table<T>' to 'Table<T2>'
IServerFuncs
( )にジェネリック型を追加せずにこれを機能させる必要がありIServerFuncs<T>
ます。何かアイデアはありますか?