2010-03-29 49 views
1

我正在構建一個將數據發佈到Google日曆的事件系統。我正在使用jquery 1.4.2,fullcalendar 1.4.5和asp.net MVC 2.我正在爲入門系統使用jquery ui模式對話框。 jquery ui datepicker來自和來自領域。選擇時間字段的框。我已經在GCalEvent類中爲startDate,startTime,endDate和endTime嘗試了字符串和DateTime格式。將json傳遞給MVC控制器時的空日期引用

我收到了傳遞給控制器​​Action方法的日期的空引用。

var gcalevent = { 
         'eventID': $('#eventID').val(), 
         'eventURL': $('#eventURL').val(), 
         'date': { 
          'startDate': $("#from").val(), 
          'startTime': $('#eventStartHour option:selected').val() + ":" + $('#eventStartMin option:selected').val() + $('#eventStartAMPM option:selected').val(), 
          'endDate': $('#to').val(), 
          'endTime': $('#eventEndHour option:selected').val() + ":" + $('#eventEndMin option:selected').val() + $('#eventEndAMPM option:selected').val() 
         }, 
         'allDay': $('#chkAllDay').attr('checked'), 
         'where': $('#eventWhere').val(), 
         'eventTitle': $('#eventTitle').val(), 
         'eventDescription': $('#eventDescription').val() 
        }; 
$.post("/home/AddRepeatingEvent", gcalevent, addEventCallback); 

public void AddNonRepeatingEvent(Models.GCalEvent gcalevent) 
    { 
     IGCalRepository _gcalrepo; 
     GCalRepository gcalrepo = new GCalRepository(); 
     _gcalrepo = gcalrepo; 
     //_gcalrepo.AddEvent(gcalevent); 
     GetGoogleEventURL(gcalevent.eventID.ToString()); 
    } 

public enum Days 
{ 
    Sun, 
    Mon, 
    Tue, 
    Wed, 
    Thur, 
    Fri, 
    Sat 
} 
public enum DefaultCalendarView 
{ 
    Month, 
    Day, 
    Week 
} 
public enum OrderType 
{ 
    First, 
    Second, 
    Third, 
    Fourth, 
    Last 
} 
public abstract class RepeatBaseType 
{  
} 
public class GCalEvent 
{ 
    public string title { get; set; } 
    public string description { get; set; } 
    public string where { get; set; } 
    public bool repeated { get; set; } 
    public bool allDay { get; set; } 
    public DefaultCalendarView defaultCalendarView { get; set; } 
    public GCalEventDate date { get; set; } 
    public RepeatBaseType repeatType { get; set; } 
    public string eventID { get; set; } 
    public string eventURL { get; set; } 

} 
public class GCalEventDate 
{ 
    public string startDate { get; set; } 
    public string startTime { get; set; } 
    public string endDate {get;set;} 
    public string endTime {get;set;}   
} 
internal class Duration 
{ 
    int Days { get; set; } 
    int Hours { get; set; } 
    int Minutes { get; set; } 
} 
public class RepeatedDaily: RepeatBaseType 
{ 
    public int Days { get; set; } 
} 
public class RepeatedWeekly : RepeatBaseType 
{ 
    public int Weeks { get; set; }   
    public Days[] days { get; set; } 
} 
public class RepeatedMonthly : RepeatBaseType 
{ 
    public int Months { get; set; } 
    public RepeatedMonthlyType repeatedMonthlyType { get; set; }  
} 
public class RepeatedYearly : RepeatBaseType 
{ 
    public int Years {get;set;} 
} 
public abstract class RepeatedMonthlyType 
    {      
    } 
public class RepeatedMonthlyDayOfWeek : RepeatedMonthlyType 
{ 
    public Days[] DayOfWeek { get; set; } 
    public OrderType orderType { get; set; } 
} 
public class RepeatedMonthlyDayOfMonth : RepeatedMonthlyType 
{ 
    public DateTime DayOfMonth { get; set; } 
} 

這是我第一次嘗試使用abastract類。 謝謝你的幫助。

+0

你能在這裏發表您控制器的作用?您可以使用Firebug的NET選項卡(Firefox附加組件)或Fiddler(使用Internet Explorer進行炒作)檢查實際發佈的數據。 – 2010-03-30 07:30:24

回答

相關問題