通用参数将由 getter 决定

本文关键字:getter 决定 参数 | 更新日期: 2023-09-27 17:57:06

有没有办法做这样的事情:

public interface ISomething {
        Type e { get; }
        Expression<Func<e, long>> GetExpression(); //COMPILE ERROR
}

我收到编译错误:e 是属性,但像类型一样使用。

我希望通用参数将由 getter 决定 - 可能吗?

通用参数将由 getter 决定

如果你想

保持ISomething非泛型,那么你只能使GetExpression泛型:

public interface ISomething 
{
     Expression<Func<T, long>> GetExpression<T>();
}

这应该可以解决问题,尽管我不太了解e属性的目的。

public interface ISomething<T> 
{
    T SomeProperty { get; }
    Expression<Func<T, long>> GetExpression();
}
 public interface ISomething<T> {
 {
         Expression<Func<T, long>> GetExpression();
 }