Class Calendar
名称: Aspose.Tasks 集合: Aspose.Tasks.dll (25.4.0)
代表一个项目中使用的日历。
[ClassInterface(ClassInterfaceType.AutoDual)]
public class Calendar : ICalendar
Inheritance
Implements
继承人
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
如何从切割中创建简单的日历
// create empty calendar
Calendar calendar = new Calendar("New calendar");
// adds default working days (8 working hours from 9:00 to 17:00)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday));
// create new new working day
WeekDay myWeekDay = new WeekDay(DayType.Thursday);
// Sets working time. Only time part of DateTime is important
WorkingTime wt1 = new WorkingTime();
wt1.FromTime = new DateTime(1, 1, 1, 6, 0, 0, 0);
wt1.ToTime = new DateTime(1, 1, 1, 12, 0, 0, 0);
WorkingTime wt2 = new WorkingTime();
wt2.FromTime = new DateTime(1, 1, 1, 14, 0, 0, 0);
wt2.ToTime = new DateTime(1, 1, 1, 18, 0, 0, 0);
myWeekDay.WorkingTimes.Add(wt1);
myWeekDay.WorkingTimes.Add(wt2);
myWeekDay.DayWorking = true;
calendar.Days.Add(myWeekDay);
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Friday));
// adds weekend
calendar.Days.Add(new WeekDay(DayType.Saturday));
calendar.Days.Add(new WeekDay(DayType.Sunday));
[VB]
' create empty calendar
Dim calendar As Calendar = New Calendar("New calendar")
' adds default working days (8 working hours from 9:00 to 17:00)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday))
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday))
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday))
' create new new working day
Dim myWeekDay As WeekDay = New WeekDay(DayType.Thursday)
' Sets working time. Only time part of DateTime is important
Dim wt1 As WorkingTime = New WorkingTime()
wt1.FromTime = New DateTime(1, 1, 1, 6, 0, 0, 0)
wt1.ToTime = New DateTime(1, 1, 1, 12, 0, 0, 0)
Dim wt2 As WorkingTime = New WorkingTime()
wt2.FromTime = New DateTime(1, 1, 1, 14, 0, 0, 0)
wt2.ToTime = New DateTime(1, 1, 1, 18, 0, 0, 0)
myWeekDay.WorkingTimes.Add(wt1)
myWeekDay.WorkingTimes.Add(wt2)
myWeekDay.DayWorking = True
calendar.Days.Add(myWeekDay)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Friday))
' adds weekend
calendar.Days.Add(New WeekDay(DayType.Saturday))
calendar.Days.Add(New WeekDay(DayType.Sunday))
Remarks
使用日历来定义标准工作和非工作时间。项目必须有一个基础日历,任务和资源可以他们自己的非基础日历,基于一个基础日历。
Properties
BaseCalendar
接收或设置该日历依赖的基础日历。只有当日历不是基日历时才适用。
public Calendar BaseCalendar { get; set; }
财产价值
Exceptions
获取日历例外收集对象。收集与日历相关的例外。
public CalendarExceptionCollection Exceptions { get; }
财产价值
Guid
获取日历指南。
public string Guid { get; }
财产价值
IsBaseCalendar
收到一个值,表明日历是否是一个基础日历。
public bool IsBaseCalendar { get; }
财产价值
IsBaselineCalendar
收到或设置一个值,表明日历是否是一个基准日历。
public bool IsBaselineCalendar { get; set; }
财产价值
Name
收到或设置日历的名称。
public string Name { get; set; }
财产价值
Uid
接收或设置日历的独特识别器。
public int Uid { get; set; }
财产价值
WeekDays
Gets WeekDaysCollection 为此日历。收集定义日历的周日。
public WeekDayCollection WeekDays { get; }
财产价值
WorkWeeks
获取 WorkWeekCollections 对象。收集与日历相关的工作周。
public WorkWeekCollection WorkWeeks { get; }
财产价值
Methods
Delete()
从项目中删除日历。
public void Delete()
Equals(对象)
返回一个值,表明这个例子是否相当于一个指定的对象。
public override bool Equals(object obj)
Parameters
obj
object
与这个案例进行比较。
Returns
True 如果 o 是与此例相同的 Uid 值的日历;否则, 虚假.
GetFinishDateByStartAndWork(日期,长度)
根据日历计算指定工作时间的日期。
public DateTime GetFinishDateByStartAndWork(DateTime start, Duration work)
Parameters
start
DateTime
开始日期。
work
Duration
工作时间。
Returns
结束日期。
GetFinishDateByStartAndWork(日期,TimeSpan)
根据日历计算指定工作时间的日期。
public DateTime GetFinishDateByStartAndWork(DateTime start, TimeSpan work)
Parameters
start
DateTime
开始日期。
work
TimeSpan
工作时间。
Returns
结束日期。
GetHashCode()
返回一个哈希代码为类的例子。
public override int GetHashCode()
Returns
这个对象的Hash代码。
GetIntersectionCalendar(日历、日历)
收到 Aspose.Tasks.ICkalendar 例子,可用于在 2 个日历的工作时间表的交叉点进行计算。
public static ICalendar GetIntersectionCalendar(Calendar calendar1, Calendar calendar2)
Parameters
calendar1
Calendar
第一日历。
calendar2
Calendar
第二个日历。
Returns
使用 ICalendar 接口。
Exceptions
如果任何一个论点是零。
GetNextWorkingDayStart(DateTime)
计算下一个工作日开始为指定的日期。
public DateTime GetNextWorkingDayStart(DateTime date)
Parameters
date
DateTime
接下来的工作日就开始了。
Returns
下个工作日开始 System.DateTime。
GetPreviousWorkingDayEnd(DateTime)
从指定的日期开始计算前工作日期的结束。
public DateTime GetPreviousWorkingDayEnd(DateTime date)
Parameters
date
DateTime
计算前工作日结束的日期。
Returns
上一篇:工作日结束
GetStartDateFromFinishAndDuration(日期,长度)
返回开始日期基于确定的结束日期的和时间。
public DateTime GetStartDateFromFinishAndDuration(DateTime finish, Duration duration)
Parameters
finish
DateTime
确定的结束日期。
duration
Duration
确定的时间。
Returns
计算开始日期。
GetStartDateFromFinishAndDuration(日期,TimeSpan)
返回开始日期基于确定的结束日期的和时间。
public DateTime GetStartDateFromFinishAndDuration(DateTime finish, TimeSpan duration)
Parameters
finish
DateTime
确定的结束日期。
duration
TimeSpan
确定的时间。
Returns
计算开始日期。
GetTaskFinishDateFromDuration(工作,TimeSpan)
计算任务完成日期和时间从其开始日期的,分割部分和工作时间。
public DateTime GetTaskFinishDateFromDuration(Task task, TimeSpan duration)
Parameters
task
Task
任务是计算完成日期。
duration
TimeSpan
要计算的时间。
Returns
任务的终止日期为指定的开始日期的和持续时间。
Remarks
返回 DateTime.MinValue 如果任务是总结,零或其开始日期未设置。
GetWorkingHours(日期,日期)
返回工作单位 - 指定的日期时间间隔工作时间的开始、结束和持续时间。
public WorkUnit GetWorkingHours(DateTime start, DateTime finish)
Parameters
start
DateTime
间隔开始日期。
finish
DateTime
结束间隔的日期。
Returns
Aspose.Tasks.WorkUnit 包含工作时间开始、结束和持续时间的班级。
GetWorkingHours(DateTime)
返回指定的日期工作时间的数量。
public TimeSpan GetWorkingHours(DateTime dt)
Parameters
dt
DateTime
到达工作时间的日期
Returns
工作时间在指定的日期。
GetWorkingTimes(DateTime)
返回 Aspose.Tasks.WorkingTime 指定的日期工作时间。
public WorkingTimeCollection GetWorkingTimes(DateTime dt)
Parameters
dt
DateTime
到达工作时间的日期
Returns
收藏 Aspose.Tasks.WorkingTime 例子。
IsDayWorking(DateTime)
根据日历确定指定日是否是工作日。
public bool IsDayWorking(DateTime dt)
Parameters
dt
DateTime
查看日期是否工作。
Returns
这是真的,如果是工作日。
Make24HourCalendar(Calendar)
使某个日历成为一个24小时日历。24小时日历是一个日历,每周的每一天都在工作时间。
public static Calendar Make24HourCalendar(Calendar calendar)
Parameters
calendar
Calendar
编写24小时的日历。
Returns
24小时日历。
MakeNightShiftCalendar(Calendar)
创建一个日历作为夜间交换日历。
public static Calendar MakeNightShiftCalendar(Calendar calendar)
Parameters
calendar
Calendar
编写夜间交换日历。
Returns
夜间交换日历
MakeStandardCalendar(Calendar)
创建默认标准日历。
public static Calendar MakeStandardCalendar(Calendar calendar)
Parameters
calendar
Calendar
编制标准日历。
Returns
日历为5个工作日(星期一至星期五),工作时间为8日至12日和13日至17日。