编程语言
首页 > 编程语言> > c# – 我可以在现有的.NET结构中添加枚举,比如Date吗?

c# – 我可以在现有的.NET结构中添加枚举,比如Date吗?

作者:互联网

显然,微软的日期结构没有月份枚举.
我想知道的是,是否可以创建枚举并将其附加到DateTime结构?扩展方法立即浮现在脑海中,但我不知道如何使用它们来解决这个问题.

Dim july As DateTime.Months = DateTime.Months.July

Public Enum Months
    January = 1
    February = 2
    March = 3
    April = 4
    May = 5
    June = 6
    July = 7
    August = 8
    September = 9
    October = 10
    November = 11
    December = 12
End Enum

有没有人对此有任何想法?

更新:
我不是要获取当前月份或给定日期的月份名称.我知道该怎么做.我只是想创建一个具有Month属性的类,并希望使用Enum来表示月份.由于这似乎是一个可以在其他地方使用的项目,我讨厌将Enum放入我的班级,而宁愿让它“定位”在与其直接相关的结构中,以便可以轻松找到它.
谢谢你的回复.我应该更清楚地了解我想做什么.

解决方法:

您无法将属性添加到现有类型中.

但是,您可以添加一个将从整数转换为相应枚举值的extension method,或者只返回与月份对应的枚举值.

标签:c,net,enums,vb-net,extension-methods
来源: https://codeday.me/bug/20190714/1462301.html