[英]Can you have an extension method on a type instead of on an instance of a type?
我可以有一個這樣的擴展方法:
DateTime d = new DateTime();
d = d.GetRandomDate();
GetRandomDate是我的擴展方法。 但是,上面沒有多大意義。 更好的是:
DateTime d = DateTime.GetRandomDate();
但是,我不知道該怎么做。 擴展方法創建為:
public static DateTime GetRandomDate(this System.DateTime dt)
只會在上面的第一個示例中添加GetRandomDate(),而不是第二個示例。 有沒有辦法實現預期的行為?
否-不可能
您需要在自己的靜態類上訪問該方法...
你為什么要 如果要調用靜態方法,為什么不直接調用它呢?
好的,您將需要使用類似DateTimeHelper.GetRandomDate()
東西來代替DateTime.GetRandomDate()
。
只是把它扔在那里,但是您可以創建日期時間的局部靜態類並在上面拋出擴展方法嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.