コード例 #1
0
        public bool Equals(string str)
        {
            if (str == null)
            {
                return(false);
            }

            if (str.StartsWith("-"))
            {
                str = str.Substring(1);
            }

            return(ShortForm.ToString().Equals(str) || LongForm.Equals(str));
        }
コード例 #2
0
        public ActionResult Submit(ShortForm model)
        {
            try
            {
                if (model.IsValid)
                {
                    _formRepository.Submit(model);
                    return(new HttpStatusCodeResult(HttpStatusCode.OK));
                }

                HttpContext.Response.StatusCode        = 400;
                HttpContext.Response.StatusDescription = "Server validation failed";
                return(Json(model.ValidationErrors));
            }
            catch (Exception ex)
            {
                HttpContext.Response.StatusDescription = ex.Message;
                HttpContext.Response.StatusCode        = 500;
                return(Json(ex));
            }
        }
コード例 #3
0
        public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
        {
            var request = controllerContext.HttpContext.Request;

            var formName = request.Form.Get("formname");

            var form = new ShortForm(formName);

            foreach (var control in form.Controls)
            {
                if (control is IFileControl)
                {
                    var fileControl = control as IFileControl;
                    fileControl.SubmittedValue = request.Files[control.Name]?.FileName;
                    fileControl.SubmittedData  = request.Files[control.Name]?.InputStream;
                }
                else
                {
                    control.SubmittedValue = request.Form.Get(control.Name);
                }
            }

            return(form);
        }