繁体   English   中英

C#在自己的方法中访问泛型类的T

[英]C# access T of generic class in its own method

我只是从泛型开始,想知道如何在类方法中访问类的T? 让我们用一些代码更好地解释我想做什么:

public class RegisterResult<T> where T : IRegisterable
{
    public bool Success { get; set; }
    public string Entity { get; set; }
    public string ErrorMessage { get; set; }

    //Want to avoid this, by using generics:
    /*public static RegisterResult UserSuccess = new RegisterResult(true, "User", "");
    public static RegisterResult DeviceSuccess = new RegisterResult(true, "Device", "");
    public static RegisterResult DeviceDataSucces = new RegisterResult(true, "DeviceData", "");*/

    public RegisterResult(bool success, string errmsg)
    {
        this.Success = success;
        //The following line does not work, so how can I reach that?
        this.Entity = T.GetType().Name;
        this.ErrorMessage = errmsg;
    }

}

非常感谢您提供的所有有益的帮助!

更新:来自Visual Studio的错误消息

“ T”是“类型参数”,在给定上下文中无效

就这么简单:

this.Entity = typeof(T).Name;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM