簡體   English   中英

我可以從泛型類型 T 繼承泛型 class 嗎? 喜歡我的班級<t> : T</t>

[英]Can I inherit a generic class from a generic type T? Like MyClass<T> : T

我想要實現的是下面這樣的東西,Visual Studio 抱怨它,我不知道如何實現它:

public abstract class My_BaseControl<T> : T, IRightBasedUsability
        where T : System.Web.UI.WebControls.WebControl 
{

    // Some methods that I want to have for all 
    //the extended asp.net controls along my application
    //which implements IRightBasedUsability

}

在這種情況下,也許 c# 擴展方法是解決您問題的一種方法。

@see http://msdn.microsoft.com/en-us/library/bb383977.aspx

Eric De Carufel 寫了一些關於擴展方法以及如何管理他們的 scope 的有趣文章: http://blog.decarufel.net/2009/02/extension-methods-series-managing-scope.ZFC256FDC70D2FCCAD9

您根本不能從不存在的類型繼承,不; 這就是您將使用您顯示的代碼所做的事情。

您可以獲得的最接近的方法是從where T子句中的 class 繼承。 無論如何,效果不會有太大不同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM