5
A
回答
7
我相信那個人是不正確的。 From MSDN
您無法定義擴展屬性,字段或事件。
0
根據適用於Visual Studio 11的MSDN(草案)documentation,擴展屬性在VS 11(即.NET 4.5)中也不可用。
這很奇怪,雖然搜索引發了一些博客等人認爲可能的情況,包括Ayende在他的博客here上的一篇文章。
+0
這真的很奇怪,我不知道他們在做什麼,然後他們是否認爲這是擴張屬性。 – Terry 2012-03-16 16:21:06
1
這是幾乎可能。從Daniel Cazzulino學習這個巧妙的技巧。
您從公開屬性的擴展方法返回一個類型。這是C#,但應該可以理解。
public static class ListExtensions
{
// this extension method returns the type with properties
public static ListExtender<T> Extend<T>(this List<T> target)
{
//null check skipped
return new ListExtender<T>(target);
}
}
public sealed class ListExtender<T>
{
private List<T> _target;
// this is a pseudo extension property
public T First { get { return _target[0]; } }
public ListExtender(List<T> target)
{
_target = target;
}
}
除此之外,答案是否定的。
相關問題
- 1. 擴展方法和擴展屬性是不好的做法嗎?
- 2. 擴展屬性
- 3. C#擴展方法,而不是迭代
- 4. C#擴展方法與特定屬性
- 5. C#的DateTime添加屬性,而不擴展方法
- 6. 擴展屬性Kotlin
- 7. CSS屬性擴展
- 8. 擴展方法
- 9. 擴展類成員的擴展方法?
- 10. 使用擴展方法的擴展類
- 11. 擴展方法擴展靜態類
- 12. 從擴展運行方法擴展運行擴展運行
- 13. AutoMapper展開擴展方法
- 14. 什麼是擴展方法?
- 15. 轉換類擴展性(擴展方法vs Parital Class)
- 16. GraphicsPath.IsClockWise()擴展方法
- 17. C#擴展方法
- 18. 擴展方法ConvertAll
- 19. XElement.Elements()擴展方法?
- 20. 擴展類方法
- 21. VB.NET擴展方法
- 22. ValueProvider.GetValue擴展方法
- 23. 擴展方法2.10.8.1
- 24. C# - 擴展方法
- 25. C#擴展方法
- 26. 在擴展方法
- 27. div不擴展表擴展,或div不擴展當它擴大
- 28. SASS擴展屬性只有
- 29. 擴展保留屬性
- 30. 只讀屬性類擴展
正確。這從未得到支持。 – 2012-03-16 13:38:52
VB.NET具有允許您省略方法的空參數的(非)幸運功能,該方法也適用於擴展方法,因此您可以編寫擴展方法並使其看起來像擴展屬性。 – vcsjones 2012-03-16 13:45:48