繁体   English   中英

C# 中不使用类型参数的泛型方法有什么用途(<t> ) 作为输入参数还是返回值?</t>

[英]What are the usages of a generic method in C# without using type argument(<T>) as input parameters or return value?

C# 中泛型方法的用法是什么,而不使用类型参数作为输入参数或返回值?

private void method1<T>()

刚刚在ASP.NET核心代码中探索了一下,看到他们在很多地方都使用了这种泛型方法。

例如在 UseMiddlewareExtensions 中的 UseMiddleware。

public static IApplicationBuilder UseMiddleware<TMiddleware>(this IApplicationBuilder app,
    params object[] args)
{
    return app.UseMiddleware(typeof(TMiddleware), args);
}

这是一种常见的模式还是我错了?

它只是一种传入类型的方式,而不是添加额外的类型参数。 它与以下内容完全相同:

public static IApplicationBuilder UseMiddleware(this IApplicationBuilder app,
    params object[] args,
    Type middlewhereType)
{
    return app.UseMiddleware(middlewhereType, args);
}

这只是风格选择的问题,使用哪一个。

暂无
暂无

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

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