我,
我的页面中有一个 kendoRecurrenceEditor 和一个来自 Telerik 的日历。
kendoRecurrenceEditor 放置在 RadWindow 中并且工作正常,但是当我单击“确定”时我无法获得模式。
基本上,我想要 kendoRecurrenceEditor 的结果模式。可以通过 JQuery 或服务器端
有什么帮助吗?谢谢,布鲁诺 F。
我,
我的页面中有一个 kendoRecurrenceEditor 和一个来自 Telerik 的日历。
kendoRecurrenceEditor 放置在 RadWindow 中并且工作正常,但是当我单击“确定”时我无法获得模式。
基本上,我想要 kendoRecurrenceEditor 的结果模式。可以通过 JQuery 或服务器端
有什么帮助吗?谢谢,布鲁诺 F。
SchedulerEvent 有recurrenceRule 字段。这将选择重复模式用户。
希望有帮助。
您只需要确保将该重复规则绑定到您要传递回服务器的模型上的某个属性。服务器应该能够将其序列化为一个对象:
public abstract class RecurrenceRule : ISerializable, IEquatable<RecurrenceRule>
如果它不能序列化它并且你只得到字符串模式,你可以像这样转换成重复规则(我在模式中缺少参数时遇到问题,所以我做了一个如下的方法):
private RecurrenceRule GetParsedRecurrenceRule(DateTime start, DateTime end, string recurrenceRuleToParse)
{
// Parse recurrence rule.
var recurrenceRule = string.Format(
"DTSTART:{0:yyyyMMddTHHmmssZ}\r\nDTEND:{1:yyyyMMddTHHmmssZ}\r\nRRULE:{2}", start, end,
recurrenceRuleToParse);
// Add interval if it is missing otherwise the parser will fail.
if (!recurrenceRule.Contains("INTERVAL="))
{
recurrenceRule = string.Format("{0};INTERVAL=1", recurrenceRule);
}
// Fix for daily recurrence that was not working properly due to missing BYDAY parameter.
if (recurrenceRule.Contains("FREQ=DAILY") && !recurrenceRule.Contains("BYDAY="))
{
recurrenceRule = string.Format("{0};BYDAY=MO,TU,WE,TH,FR,SA,SU", recurrenceRule);
}
// Fix of missing never option - default to COUNT=1
if (!recurrenceRule.Contains("COUNT=") && !recurrenceRule.Contains("UNTIL="))
{
recurrenceRule = string.Format("{0};COUNT=1", recurrenceRule);
}
RecurrenceRule parsedRule;
bool parseResult = RecurrenceRule.TryParse(recurrenceRule, out parsedRule);
return parsedRule;
}