2017-04-12 5 views
0

J'utilise DayPilot pour créer un calendrier dans la vue mensuelle.Aucune méthode appropriée pour remplacer

donc la suite de cette tutorial, j'ai ceci:

public class Dpm : DayPilotMonth 
{ 
    MyCalendarEntities db = new MyCalendarEntities(); 

    protected override void OnInit(InitArgs e) // this is where I receive the error 
    { 
     Update(); 
    } 

    protected override void OnFinish() 
    { 
     // only load the data if an update was requested by an Update() call 
     if (UpdateType == CallBackUpdateType.None) 
     { 
      return; 
     } 

     Events = db.Events.ToList(); 

     DataStartField = "StartDate"; 
     DataEndField = "EndDate"; 
     DataTextField = "Event1"; 
     DataIdField = "ID"; 

    } 
} 

Je ne reçois l'erreur sur la méthode OnInit, mais pas sur la méthode OnFinish même si, dans la classe de base, ils sont à peu près déclaré la même :

classe de base:

public class DayPilotMonth 
{ 
    protected DayPilotMonth(); 


    public string BackColor { get; set; } 

    public string HeaderBackColor { get; set; } 

    public string Id { get; } 

    public string NonBusinessBackColor { get; set; } 
    public DayOfWeek ResolvedWeekStart { get; } 

    public DateTime StartDate { get; set; } 

    public CallBackUpdateType UpdateType { get; } 
    public DateTime VisibleEnd { get; } 
    public DateTime VisibleStart { get; } 

    public WeekStarts WeekStarts { get; set; } 
    protected Controller Controller { get; } 

    protected string DataEndField { get; set; } 

    protected string DataIdField { get; set; } 

    protected string DataStartField { get; set; } 

    protected string DataTextField { get; set; } 
    protected IEnumerable Events { get; set; } 

    public ActionResult CallBack(Controller c); 

    protected virtual void OnBeforeEventRender(BeforeEventRenderArgs e); 
    protected virtual void OnCommand(CommandArgs e); 
    protected virtual void OnEventClick(EventClickArgs e); 
    protected virtual void OnEventMove(EventMoveArgs e); 
    protected virtual void OnEventResize(EventResizeArgs e); 
    protected virtual void OnFinish(); 
    protected virtual void OnInit(InitArgs e); 

    protected virtual void OnPrepare(); 
    protected virtual void OnTimeRangeSelected(TimeRangeSelectedArgs e); 

    protected void Redirect(string url); 
    protected void Update(); 
    protected void Update(object data); 
    protected void Update(CallBackUpdateType type); 
    protected void Update(object data, CallBackUpdateType type); 
} 

Qu'est-ce que je fais de mal?

+0

Se pourrait-il qu'il ya deux classes avec le nom 'InitArgs'? – Fabjan

+0

Comme il se trouve il y a! Je n'ai jamais pensé à ça. Je vous remercie! –

+0

vérifier l'espace de noms des paramètres InitArgs, rien d'autre ne vient à l'esprit – levent

Répondre

1

Ajouter ce en utilisant:

using DayPilot.Web.Mvc.Events.Month; 

Ou encore mieux:

protected override void OnInit(DayPilot.Web.Mvc.Events.Month.InitArgs e) {.. 
+0

ahh qui a fonctionné! Merci beaucoup! –