Beispiel #1
0
        /// <summary>
        /// Defines a Scheduler resource.
        /// </summary>
        public SchedulerResourceBuilder <TModel> Add <TValue>(Expression <Func <TModel, TValue> > expression)
        {
            //TODO: Refactor and add validation for fields
            if (!typeof(TModel).IsPlainType() && !expression.IsBindable())
            {
                throw new InvalidOperationException(Exceptions.MemberExpressionRequired);
            }

            string memberName = ExpressionHelper.GetExpressionText(expression);

            SchedulerResource <TModel> resource = new SchedulerResource <TModel>(memberName);

            container.Resources.Add(resource);

            return(new SchedulerResourceBuilder <TModel>(resource, container.ViewContext, container.UrlGenerator));
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="SchedulerResourceBuilder{TModel}"/> class.
 /// </summary>
 /// <param name="resource">The resource</param>
 /// <param name="viewContext">The viewContext</param>
 /// <param name="urlGenerator">The resource</param>
 public SchedulerResourceBuilder(SchedulerResource <TModel> resource, ViewContext viewContext, IUrlGenerator urlGenerator)
 {
     this.resource     = resource;
     this.viewContext  = viewContext;
     this.urlGenerator = urlGenerator;
 }