1
A
回答
3
它使得这种方法的扩展方法。它扩展了DateTime
结构。
你可以这样调用
DateTime dt = DateTime.Now;
string s = dt.TestFunc();
编译器内部重写最后一行
string s = TestFunc(dt);
如果扩展方法声明如下
public static string TestFunc(this DateTime dt, string format)
{
}
你可以称它这样
string s = dt.TestFunc("dd.MM.YY");
扩展方法必须在静态类中声明。如果声明类的名称空间可用(或者因为它位于相同的名称空间中或因为您使用using
导入了名称空间),则可以将它们用于其他类中。如果您导入System.Linq
,您将看到很多扩展方法(在intellisense中),扩展了各种实现IEnumerable<T>
的集合。成员列表中的扩展方法显示蓝色箭头。
3
在此上下文中,它用于定义extension method。
1
用于扩展DateTime
类型,即全部。
2
这是用来定义扩展方法的语法。它可以被称为一个正常的静态函数:
DateTime dt = DateTime.Today;
string s = ClassName.TestFunc(dt);
或日期时间的“延伸”:
DateTime dt = DateTime.Today;
string s = dt.TestFunc();
0
你已经找到了DateTime
类型的extension method。
所以现在,没有任何改变现有DateTime
代码,你可以做以下内容:
DateTime MyDT = DateTime.Now;
string MyStr = MyDT.TestFunc();
// continue using MyStr as you wish...
相关问题
- 1. Python修饰符覆盖函数参数
- 2. 编写具有许多参数/修饰符的PHP函数
- 3. 访问修饰符的Scala参数?
- 4. C#修饰符'abstract'对此项无效
- 5. 函数的SQL Server访问修饰符
- 6. 头文件或源文件中的C++函数修饰符?快速参考
- 7. C#构造函数extern修饰符的用途
- 8. c# - ref修饰符...参考类型
- 9. 修饰器,改变函数的某些参数
- 10. C++构造函数,继承,访问修饰符和东西
- 11. 与函数参数的Python装饰
- 12. 如何在变量而不是参数上使用批量参数修饰符
- 13. C++顺序修饰符
- 14. 访问修饰符C# - 内部修饰符
- 15. 在C++中没有修饰符的RegisterHotKey
- 16. 类::方法::修饰符 - 如何在“之前”加入参数?
- 17. C#字符串格式标志或修饰符转为小写参数
- 18. 参数列表中的修饰符的含义是什么?
- 19. C函数装饰/多态
- 20. c函数装饰器#
- 21. Python装饰器处理装饰函数的默认参数
- 22. 修饰器,添加关键字参数
- 23. 修饰器没有得到参数
- 24. 参数ITEMS的非法修饰符;只有最后被允许
- 25. 长度修饰符参数 - GCC 4.7.0 MinGW的
- 26. sed:修改函数参数
- 27. C#修饰符覆盖对此项无效
- 28. Moose角色修饰符函数的失败行为
- 29. 构造函数中的变量修饰符
- 30. 修饰器不调用封装函数
可能重复(http://stackoverflow.com/questions/ [在C#这个参数修改?] 4700016/this-parameter-modifier-in-c) – 2012-03-02 19:51:47
如果你要纠正它,你至少应该纠正语法,......它应该读“这个”在这种情况下代表什么“?反对这个“什么”在这里? – 2012-03-02 19:52:21