protected void btnSaveAccountSettings_Click(object sender, EventArgs e) { if (Page.IsValid) { try { UserLogic uLogic = new UserLogic(); System.Security.Principal.IPrincipal user = System.Web.HttpContext.Current.User; SystemUsers currentUser = uLogic.GetCurrentUser(user); using (FormContext ctx = new FormContext()) { var updateUser = ctx.SystemUsers.FirstOrDefault(x => x.SystemUserID == currentUser.SystemUserID); updateUser.Greeting = txtGreeting.Text; updateUser.DisplayName = txtDisplayName.Text; updateUser.UserStatus = ctx.UserStatuses.FirstOrDefault(x => x.StatusText == ddlUserStatus.SelectedText); ctx.SaveChanges(); divSaveCancel.Visible = false; divLabelEdit.Visible = true; divDisplayNameEdit.Visible = false; ddlUserStatus.Enabled = false; txtGreeting.Enabled = false; lblUser.Text = txtDisplayName.Text; } } catch (Exception ex) { throw; } } }
public void BeginFormWithClientValidationEnabled() { // Arrange Mock<HttpResponseBase> mockHttpResponse; HtmlHelper htmlHelper = GetFormHelper(@"<form action=""/some/path"" id=""form_id"" method=""post"">", @"</form>", out mockHttpResponse); mockHttpResponse.Expect(r => r.Write(@"<script type=""text/javascript""> //<![CDATA[ EnableClientValidation({""Fields"":[],""FormId"":""form_id""}, null); //]]> </script>")).Verifiable(); FormContext originalContext = new FormContext(); htmlHelper.ClientValidationEnabled = true; htmlHelper.ViewContext.FormContext = originalContext; // Act & assert - push MvcForm theForm = htmlHelper.BeginForm(); Assert.IsNotNull(htmlHelper.ViewContext.FormContext); Assert.AreNotEqual(originalContext, htmlHelper.ViewContext.FormContext, "FormContext should have been set to a new instance."); Assert.AreEqual("form_id", htmlHelper.ViewContext.FormContext.FormId); Assert.IsTrue(htmlHelper.ViewContext.FormContext.ClientValidationEnabled); // Act & assert - pop theForm.Dispose(); Assert.AreEqual(originalContext, htmlHelper.ViewContext.FormContext, "FormContext was not properly restored."); mockHttpResponse.Verify(); }
public IEnumerable <Comments> rptrComments_GetData() { try { int recordId; Int32.TryParse(lblRecordId.Text, out recordId); using (FormContext ctx = new FormContext()) { if (ctx.Comments.Any(x => x.Form.FormName == "Cannot Wait For Container" && x.RelatedFormId == recordId)) { IEnumerable <Comments> commentsList = ctx.Comments .Where(x => x.Form.FormName == "Cannot Wait For Container" && x.RelatedFormId == recordId) .Include(x => x.User) .OrderByDescending(x => x.RecordId) .ToList(); return(commentsList); } } return(null); } catch (Exception ex) { return(null); } }
public ProjectForm(MainForm mainForm, FormContext context, Project project) { if (mainForm == null) { throw new ArgumentNullException(nameof(mainForm)); } if (context == null) { throw new ArgumentNullException(nameof(context)); } if (project == null) { throw new ArgumentNullException(nameof(project)); } mMainForm = mainForm; mContext = context; Project = project; InitializeComponent(); // Center on the parent, we assume modeless here and CenterParent doesn't work on modeless StartPosition = FormStartPosition.Manual; Location = new Point( mainForm.Location.X + (mainForm.Width - Width) / 2, mainForm.Location.Y + (mainForm.Height - Height) / 2); ShowProjectDetails(); ShowMilestones(); ShowTickets(); PopulateTicketFilters(); UpdateTitlebar(); }
private static void handlerAddOnFieldHandler(object sender, EventArgs e) { var rfv = sender as RequiredFieldValidator; rfv.Enabled = false; int IdField = Convert.ToInt32(rfv.Attributes["IdFormField"]); int IdForm = Convert.ToInt32(rfv.Attributes["FormId"]); FormContext db = new FormContext(); var Field = db.FormFields.Find(IdField); foreach (FieldRequiredRelationParent frrp in Field.FieldRequiredRelationParents.ToList()) { Control control = (Control)findControlI(findControlParent(rfv, "PanelForm" + IdForm), "FormField" + Field.IdForm + "_" + frrp.ParentIdFormField); if (control is DropDownList) { DropDownList ddl = control as DropDownList; if (ddl.SelectedIndex > 0 && !rfv.Enabled) { rfv.Enabled = Field.FieldRequiredRelationParents.Count( p => p.IdFormField == IdField && p.ParentIdFormField == frrp.ParentIdFormField && p.IdValue == Convert.ToInt32(ddl.SelectedValue) && !p.Deleted) > 0; rfv.Attributes["test"] += "| IdFormField=" + IdField + " ParentIdFormField=" + IdField + " IdValue = " + ddl.SelectedValue; return; } } } }
public override bool InvokeCommand(SubModuleFunctions command, IContext contextHandler) { Console.WriteLine("InvokeCommand execution for Form SubModule"); FormContext subModuleContextHandler = contextHandler as FormContext; switch (command) { case SubModuleFunctions.CreateForm: // create form function return(true); case SubModuleFunctions.AskForFormResults: // return formular result in a context return(true); case SubModuleFunctions.SaveFormResults: // save form to DB return(true); case SubModuleFunctions.StartForm: // form start return(true); default: return(false); } }
public void BeginFormWithClientValidationEnabled() { // Arrange StringWriter writer; HtmlHelper htmlHelper = GetFormHelper(out writer); htmlHelper.ViewContext.ClientValidationEnabled = true; htmlHelper.ViewContext.FormContext = null; FormContext defaultFormContext = htmlHelper.ViewContext.FormContext; // Act & assert - push MvcForm theForm = htmlHelper.BeginForm(); Assert.NotNull(htmlHelper.ViewContext.FormContext); Assert.NotEqual(defaultFormContext, htmlHelper.ViewContext.FormContext); Assert.Equal("form_id", htmlHelper.ViewContext.FormContext.FormId); // Act & assert - pop theForm.Dispose(); Assert.Equal(defaultFormContext, htmlHelper.ViewContext.FormContext); Assert.Equal(@"<form action=""/some/path"" id=""form_id"" method=""post""></form><script type=""text/javascript""> //<![CDATA[ if (!window.mvcClientValidationMetadata) { window.mvcClientValidationMetadata = []; } window.mvcClientValidationMetadata.push({""Fields"":[],""FormId"":""form_id"",""ReplaceValidationSummary"":false}); //]]> </script>", writer.ToString()); }
public virtual ViewPage GetViewPage() { View.EntityInfo = FormContext.EntityModelInfo; View.Actions = FormContext.Actions.ActionButtons; View.Layout = FormContext.GetLayoutView(); return(View); }
public void StubFieldValidation(string prop, FieldValidationMetadata fieldValidation) { var formContext = new FormContext(); formContext.FieldValidators.Add(prop, fieldValidation); this.viewContext.Setup(r => r.FormContext).Returns(formContext); }
// Only render attributes if unobtrusive client-side validation is enabled, and then only if we've // never rendered validation for a field with this name in this form. Also, if there's no form context, // then we can't render the attributes (we'd have no <form> to attach them to). public static IDictionary <string, object> GetUnobtrusiveValidationAttributes(HtmlHelper htmlHelper, string name, ModelMetadata metadata) { Dictionary <string, object> results = new Dictionary <string, object>(); // The ordering of these 3 checks (and the early exits) is for performance reasons. if (!htmlHelper.ViewContext.UnobtrusiveJavaScriptEnabled) { return(results); } FormContext formContext = GetFormContextForClientValidation(htmlHelper); if (formContext == null) { return(results); } string fullName = htmlHelper.ViewData.TemplateInfo.GetFullHtmlFieldName(name); if (formContext.RenderedField(fullName)) { return(results); } formContext.RenderedField(fullName, true); //IEnumerable<ModelClientValidationRule> clientRules = htmlHelper.ClientValidationRuleFactory(name, metadata); //copy of the ClientValidationRuleFactory method IEnumerable <ModelClientValidationRule> clientRules = ModelValidatorProviders.Providers.GetValidators(metadata ?? ModelMetadata.FromStringExpression(name, htmlHelper.ViewData), htmlHelper.ViewContext).SelectMany(v => v.GetClientValidationRules()); UnobtrusiveValidationAttributesGenerator.GetValidationAttributes(clientRules, results); return(results); }
public IEnumerable <Status> GetStatuses() { FormContext ctx = new FormContext(); var StatusList = ctx.Statuses.ToList(); return(StatusList); }
private static FieldValidationMetadata ApplyFieldValidationMetadata( HtmlHelper htmlHelper, ModelMetadata modelMetadata, string modelName ) { FormContext formContext = htmlHelper.ViewContext.FormContext; FieldValidationMetadata fieldMetadata = formContext.GetValidationMetadataForField( modelName, true /* createIfNotFound */ ); // write rules to context object IEnumerable <ModelValidator> validators = ModelValidatorProviders.Providers.GetValidators( modelMetadata, htmlHelper.ViewContext ); foreach ( ModelClientValidationRule rule in validators.SelectMany( v => v.GetClientValidationRules() ) ) { fieldMetadata.ValidationRules.Add(rule); } return(fieldMetadata); }
public void MyStudentPageVMInitialize_Success() { //Arrange ClearDatabase(); CreateMySessionTestData(_appUser); VM = new StudentsPageVM(dbConName, new Student(), _appUser); //Act //VM initialize is the act //Assert FormContext formContext = FormContext.Create; SubgridContext subgridContext = SubgridContext.Groups; bool isConfirmed = false; int ssId = 0; int lecId = 444; int availableGroupCount = 2; int studentCount = 3; Assert.AreEqual(formContext, VM.FormContext); Assert.AreEqual(isConfirmed, VM.IsConfirmed); Assert.AreEqual(subgridContext, VM.SubgridContext); Assert.AreEqual(ssId, VM.SelectedStudent.Id); Assert.AreEqual(lecId, VM.Lecturer.Id); Assert.AreEqual(availableGroupCount, VM.AvailableGroups.Count); Assert.AreEqual(studentCount, VM.Students.Count); }
public override FormNode VisitForm(FormContext context) { if (context == null) { throw new ArgumentNullException("Context can't be null"); } if (context.children.Any(x => x.GetType() == typeof(ErrorNodeImpl))) { return(null); } // Construct FormNode object to store the results in. var name = context.formName().GetText(); FormNode node = new FormNode(Location.FromContext(context), name); // Get the sections SectionContext[] sectionContexts = context.section(); SectionVisitor visitor = new SectionVisitor(); foreach (SectionContext sectionContext in sectionContexts) { node.AddNode(visitor.VisitSection(sectionContext)); } return(node); }
/// <summary> /// Returns provided class names depending if property is valid or invalid, or empty string /// if property has not been validated. /// </summary> /// <typeparam name="TModel">The type of the model.</typeparam> /// <typeparam name="TProperty">The property of the model which we are cheking.</typeparam> /// <param name="htmlHelper"></param> /// <param name="expression">The expression tree representing a property to validate.</param> /// <param name="successCssClassName">Success class name</param> /// <param name="errorCssClassName">Error class name</param> /// <returns>Sucess class name if property is valid, error class name if property is invalid, /// or empty string if property has not been validated. /// </returns> public static string ValidationCssClassFor <TModel, TProperty>(this HtmlHelper <TModel> htmlHelper, Expression <Func <TModel, TProperty> > expression, string successCssClassName, string errorCssClassName) { FormContext formContext = htmlHelper.ViewContext.FormContext; if (formContext == null) { return(String.Empty); } string propertyKey = ExpressionHelper.GetExpressionText(expression); string validationCssClass = String.Empty; if (!htmlHelper.ViewData.ModelState.ContainsKey(propertyKey)) { return(validationCssClass); } var modelState = htmlHelper.ViewData.ModelState[propertyKey]; if (modelState.Errors != null && modelState.Errors.Count > 0) { validationCssClass = errorCssClassName; } else { validationCssClass = successCssClassName; } return(validationCssClass); }
public FormViewModel Get(int id) { var form = new FormViewModel(); using (var db = new FormContext()) { form = db.Forms.AsQueryable().Where(f => f.FormId == id).Select(s => new FormViewModel { FormId = s.FormId, Name = s.Name, Questions = s.Questions.OrderBy(q => q.Order).Select(q => new FormQuestion { QuestionId = q.QuestionId, Order = q.Order, Name = q.Name, Label = q.Label, Type = q.Type, Options = q.Options.OrderBy(o => o.OptionId).Select(o => new FormOption { OptionId = o.OptionId, Label = o.Label, Value = o.Value }).ToList() }).ToList() } ).FirstOrDefault(); } return(form); }
private static void AddMissingFields(FormContext context, FilterExpression exp) { foreach (var f in exp.GetFieldNames()) { context.AddMissingField(f); } }
public void BeginFormWithClientValidationEnabled() { // Arrange StringWriter writer; HtmlHelper htmlHelper = GetFormHelper(out writer); FormContext originalContext = new FormContext(); htmlHelper.ViewContext.ClientValidationEnabled = true; htmlHelper.ViewContext.FormContext = originalContext; // Act & assert - push MvcForm theForm = htmlHelper.BeginForm(); Assert.IsNotNull(htmlHelper.ViewContext.FormContext); Assert.AreNotEqual(originalContext, htmlHelper.ViewContext.FormContext, "FormContext should have been set to a new instance."); Assert.AreEqual("form_id", htmlHelper.ViewContext.FormContext.FormId); // Act & assert - pop theForm.Dispose(); Assert.AreEqual(originalContext, htmlHelper.ViewContext.FormContext, "FormContext was not properly restored."); Assert.AreEqual(@"<form action=""/some/path"" id=""form_id"" method=""post""></form><script type=""text/javascript""> //<![CDATA[ if (!window.mvcClientValidationMetadata) { window.mvcClientValidationMetadata = []; } window.mvcClientValidationMetadata.push({""Fields"":[],""FormId"":""form_id"",""ReplaceValidationSummary"":false}); //]]> </script>", writer.ToString()); }
protected void ddlPOStatusEdit_DataBound(object sender, EventArgs e) { try { int recordId; Int32.TryParse(hRecordId.Value, out recordId); using (var ctx = new FormContext()) { var thisForm = ctx.OrderCancellationForms.FirstOrDefault(eof => eof.RecordId == recordId); string poListString = thisForm.POStatusList.Replace(" ", ""); List <string> poList = poListString.Split(',').ToList <string>(); foreach (string poCode in poList) { if (ddlPOStatusEdit.Items.Any(x => x.Text == poCode)) { ddlPOStatusEdit.Items.FirstOrDefault(x => x.Text == poCode).Checked = true; } } if (poListString != "") { ddlPOStatusEdit.Text = poListString; } } } catch (Exception ex) { throw; } }
public void GetUnobtrusiveValidationAttributesWithTwoClientRules() { // Arrange var formContext = new FormContext(); var viewContext = new Mock <ViewContext>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); var viewDataContainer = MvcHelper.GetViewDataContainer(new ViewDataDictionary()); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); htmlHelper.ClientValidationRuleFactory = delegate { ModelClientValidationRule rule1 = new ModelClientValidationRule { ValidationType = "type", ErrorMessage = "error" }; rule1.ValidationParameters["foo"] = "bar"; rule1.ValidationParameters["baz"] = "biff"; ModelClientValidationRule rule2 = new ModelClientValidationRule { ValidationType = "othertype", ErrorMessage = "othererror" }; rule2.ValidationParameters["true3"] = "false4"; return(new[] { rule1, rule2 }); }; // Act IDictionary <string, object> result = htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.AreEqual("error", result["data-val-type"]); Assert.AreEqual("bar", result["data-val-type-foo"]); Assert.AreEqual("biff", result["data-val-type-baz"]); Assert.AreEqual("othererror", result["data-val-othertype"]); Assert.AreEqual("false4", result["data-val-othertype-true3"]); }
private static List <ParentDependencyInfo> BuildParents(FormContext context, List <string> parentFileds, string parentId) { var parents = new List <ParentDependencyInfo>(); foreach (string s in parentFileds) { var p = new ParentDependencyInfo() { WidgetId = s, IsRequired = true }; parents.Add(p); var childCtrl = context.GetWidget(s); if (childCtrl != null) { if (childCtrl.Dependency == null) { childCtrl.Dependency = new WidgetDependencyInfo(); } childCtrl.Dependency.AddChild(new ChildDependencyInfo() { WidgetId = parentId, Clear = true }); } context.MissingFields.Add(s); } return(parents); }
public IHttpActionResult AddForm([FromBody] FormModel form) { //grab data and add new form var db = new FormContext(); db.Forms.Add(form); try { db.SaveChanges(); } catch (Exception ex) { throw new Exception(ex.Message); } //add user session data if (HttpContext.Current.Session != null && HttpContext.Current.Session["forms"] != null) { var sessionForms = HttpContext.Current.Session["forms"]; if (sessionForms == null) { HttpContext.Current.Session.Add("forms", listOfForms); } } //ViewBag.FromSession = HttpContext.Current.Session["forms"]; return(Ok(form)); }
public static void Build(FormContext context, BaseField field, IWidget widget) { List <string> parentFileds = new List <string>(); if (field.ControlInfo.DataSource != null) { var domain = field.ControlInfo.DataSource.Domain; if (domain != null) { var filterFields = domain.GetAll().Where(x => x.ValueType == FilterValueType.EntityField); if (filterFields.Count() > 0) { parentFileds.AddRange(filterFields.Select(x => x.Value.ToString())); } } } if (parentFileds.Count > 0) { if (widget.Dependency == null) { widget.Dependency = new WidgetDependencyInfo(); } widget.Dependency.Parents = BuildParents(context, parentFileds, field.Name); } }
private static bool HasError(this HtmlHelper htmlHelper, ModelMetadata modelMetadata, string expression) { string modelName = htmlHelper.ViewContext.ViewData.TemplateInfo.GetFullHtmlFieldName(expression); FormContext formContext = htmlHelper.ViewContext.FormContext; if (formContext == null) { return(false); } if (!htmlHelper.ViewData.ModelState.ContainsKey(modelName)) { return(false); } ModelState modelState = htmlHelper.ViewData.ModelState[modelName]; if (modelState == null) { return(false); } ModelErrorCollection modelErrors = modelState.Errors; if (modelErrors == null) { return(false); } return(modelErrors.Count > 0); }
public FormViewModel GetSavedForm(int formId, int respondentId) { var form = new FormViewModel(); using (var db = new FormContext()) { var respondent = db.Respondents.AsQueryable().Where(r => r.RespondentId == respondentId).FirstOrDefault(); form = db.Forms.AsQueryable().Where(f => f.FormId == formId).Select(s => new FormViewModel { FormId = s.FormId, Name = s.Name, RespondentFirstName = respondent.FirstName, RespondentLastName = respondent.LastName, RespondentEmailAddress = respondent.EmailAddress, Questions = s.Questions.OrderBy(q => q.QuestionId).Select(q => new FormQuestion { QuestionId = q.QuestionId, Name = q.Name, Label = q.Label, Type = q.Type, Value = db.Responses.Where(r => r.QuestionId == q.QuestionId && r.RespondentId == respondent.RespondentId).Select(ss => ss.Value).FirstOrDefault(), Options = q.Options.OrderBy(o => o.OptionId).Select(o => new FormOption { Label = o.Label, Value = o.Value }).ToList() }).ToList() } ).FirstOrDefault(); } return(form); }
protected void btnAddSkuQuantity_Click(object sender, EventArgs e) { try { using (FormContext ctx = new FormContext()) { SkuQuantity newSQ = new SkuQuantity { MaterialSku = txtMaterialSku.Text, Quantity = txtQuantityOrdered.Text, TempId = lblRandomIdentifier.Text, Completed = false }; ctx.SkuQuantityItems.Add(newSQ); ctx.SaveChanges(); txtMaterialSku.Text = ""; txtQuantityOrdered.Text = ""; } gvSkus.DataBind(); } catch (Exception ex) { throw; } }
protected void gvSkus_RowUpdating(object sender, GridViewUpdateEventArgs e) { try { GridView gv = (GridView)sender; GridViewRow gvr = (GridViewRow)gv.Rows[e.RowIndex]; Label lblRecordIdEdit = (Label)gvr.FindControl("lblRecordIdEdit"); int id = Convert.ToInt32(lblRecordIdEdit.Text); using (FormContext ctx = new FormContext()) { var sku = ctx.SkuQuantityItems.FirstOrDefault(x => x.RecordId == id); sku.Completed = ((CheckBox)gvr.FindControl("cbCompletedEdit")).Checked; sku.MaterialSku = ((TextBox)gvr.FindControl("txtMaterialSkuEdit")).Text; sku.Quantity = ((TextBox)gvr.FindControl("txtQuantityEdit")).Text; ctx.SaveChanges(); gvSkus.DataBind(); lblAddSkuMessage.Text = ""; } } catch (Exception ex) { lblAddSkuMessage.Text = "Unable to update Material SKU# and/or Quantity. Please contact your system administrator."; } }
public void BeginFormWithClientValidationEnabled() { // Arrange StringWriter writer; HtmlHelper htmlHelper = GetFormHelper(out writer); FormContext originalContext = new FormContext(); htmlHelper.ViewContext.ClientValidationEnabled = true; htmlHelper.ViewContext.FormContext = originalContext; // Act & assert - push MvcForm theForm = htmlHelper.BeginForm(); Assert.IsNotNull(htmlHelper.ViewContext.FormContext); Assert.AreNotEqual(originalContext, htmlHelper.ViewContext.FormContext, "FormContext should have been set to a new instance."); Assert.AreEqual("form_id", htmlHelper.ViewContext.FormContext.FormId); // Act & assert - pop theForm.Dispose(); Assert.AreEqual(originalContext, htmlHelper.ViewContext.FormContext, "FormContext was not properly restored."); Assert.AreEqual(@"<form action=""/some/path"" id=""form_id"" method=""post""></form><script type=""text/javascript""> //<![CDATA[ if (!window.mvcClientValidationMetadata) { window.mvcClientValidationMetadata = []; } window.mvcClientValidationMetadata.push({""Fields"":[],""FormId"":""form_id"",""ReplaceValidationSummary"":false}); //]]> </script>", writer.ToString()); }
public TicketHistoryForm(FormContext context, Ticket ticket) { if (context == null) { throw new ArgumentNullException(nameof(context)); } if (ticket == null) { throw new ArgumentNullException(nameof(ticket)); } mContext = context; mTicket = ticket; InitializeComponent(); ShowTicketHistory(); // Select last history. if (ticketHistoryListView.Items.Count > 0) { ticketHistoryListView.SelectedIndices.Clear(); ticketHistoryListView.SelectedIndices.Add(0); } }
public void GetUnobtrusiveValidationAttributesUsesShortNameForModelMetadataLookup() { // Arrange string passedName = null; var formContext = new FormContext(); var viewContext = new Mock <ViewContext>(); var viewData = new ViewDataDictionary(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); viewData.TemplateInfo.HtmlFieldPrefix = "Prefix"; var viewDataContainer = MvcHelper.GetViewDataContainer(viewData); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); htmlHelper.ClientValidationRuleFactory = (name, _) => { passedName = name; return(Enumerable.Empty <ModelClientValidationRule>()); }; // Act htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.AreEqual("foobar", passedName); }
public ActionResult FileLoad(FormContext context) //FemContext对验证和处理html窗体中输入的数据进行封装 { HttpPostedFileBase httpPostedFileBase = Request.Files[0]; //获取文件流 if (httpPostedFileBase != null) { try { ControllerContext.HttpContext.Request.ContentEncoding = Encoding.GetEncoding("UTF-8"); ControllerContext.HttpContext.Response.Charset = "UTF-8"; string fileName = Path.GetFileName(httpPostedFileBase.FileName); //原始文件名称 string fileExtension = Path.GetExtension(fileName); //文件扩展名 byte[] fileData = ReadFileBytes(httpPostedFileBase); //文件流转化为二进制字节 string result = SaveFile(fileExtension, fileData); //文件保存 return(string.IsNullOrEmpty(result) ? Json(new { code = 0, path = "", msg = "网络异常,文件上传失败~" }) : Json(new { code = 1, path = result, msg = "文件上传成功" })); } catch (Exception ex) { return(Json(new { code = 0, msg = ex.Message, path = "" })); } } else { return(Json(new { code = 0, path = "", msg = "网络异常,文件上传失败~" })); } }
public void GetJsonValidationMetadata_ValidationSummary() { // Arrange FormContext context = new FormContext() { FormId = "theFormId", ValidationSummaryId = "validationSummary" }; ModelClientValidationRule rule = new ModelClientValidationRule() { ValidationType = "ValidationType1", ErrorMessage = "Error Message" }; rule.ValidationParameters["theParam"] = new { FirstName = "John", LastName = "Doe", Age = 32 }; FieldValidationMetadata metadata = new FieldValidationMetadata() { FieldName = "theFieldName", ValidationMessageId = "theFieldName_ValidationMessage" }; metadata.ValidationRules.Add(rule); context.FieldValidators["theFieldName"] = metadata; // Act string jsonMetadata = context.GetJsonValidationMetadata(); // Assert string expected = @"{""Fields"":[{""FieldName"":""theFieldName"",""ReplaceValidationMessageContents"":false,""ValidationMessageId"":""theFieldName_ValidationMessage"",""ValidationRules"":[{""ErrorMessage"":""Error Message"",""ValidationParameters"":{""theParam"":{""FirstName"":""John"",""LastName"":""Doe"",""Age"":32}},""ValidationType"":""ValidationType1""}]}],""FormId"":""theFormId"",""ReplaceValidationSummary"":false,""ValidationSummaryId"":""validationSummary""}"; Assert.Equal(expected, jsonMetadata); }
public void ReplaceValidationSummaryProperty() { // Arrange FormContext context = new FormContext(); // Act & Assert MemberHelper.TestBooleanProperty(context, "ReplaceValidationSummary", false, false); }
public void FieldValidatorsProperty() { // Arrange FormContext context = new FormContext(); // Act IDictionary<String, FieldValidationMetadata> fieldValidators = context.FieldValidators; // Assert Assert.NotNull(fieldValidators); Assert.Empty(fieldValidators); }
public MvcForm(ViewContext viewContext) { if (viewContext == null) { throw new ArgumentNullException("viewContext"); } _viewContext = viewContext; _writer = viewContext.Writer; // push the new FormContext _originalFormContext = viewContext.FormContext; viewContext.FormContext = new FormContext(); }
internal MvcForm(ViewContext viewContext) { if (viewContext == null) { throw new ArgumentNullException("viewContext"); } _viewContext = viewContext; _httpResponse = viewContext.HttpContext.Response; // push the new FormContext _originalFormContext = viewContext.FormContext; viewContext.FormContext = new FormContext(); }
public void GetValidationMetadataForField_Create_CreatesNewMetadataIfNotFound() { // Arrange FormContext context = new FormContext(); // Act FieldValidationMetadata result = context.GetValidationMetadataForField("fieldName", true /* createIfNotFound */); // Assert Assert.NotNull(result); Assert.Equal("fieldName", result.FieldName); Assert.Single(context.FieldValidators); Assert.Equal(result, context.FieldValidators["fieldName"]); }
public void Validate_AddsClientValidationMetadata() { var originalProviders = ModelValidatorProviders.Providers.ToArray(); ModelValidatorProviders.Providers.Clear(); try { // Arrange HtmlHelper htmlHelper = MvcHelper.GetHtmlHelper(GetViewDataWithModelErrors()); FormContext formContext = new FormContext() { FormId = "form_id" }; htmlHelper.ViewContext.ClientValidationEnabled = true; htmlHelper.ViewContext.FormContext = formContext; ModelClientValidationRule[] expectedValidationRules = new ModelClientValidationRule[] { new ModelClientValidationRule() { ValidationType = "ValidationRule1" }, new ModelClientValidationRule() { ValidationType = "ValidationRule2" } }; Mock<ModelValidator> mockValidator = new Mock<ModelValidator>(ModelMetadata.FromStringExpression("", htmlHelper.ViewContext.ViewData), htmlHelper.ViewContext); mockValidator.Setup(v => v.GetClientValidationRules()) .Returns(expectedValidationRules); Mock<ModelValidatorProvider> mockValidatorProvider = new Mock<ModelValidatorProvider>(); mockValidatorProvider.Setup(vp => vp.GetValidators(It.IsAny<ModelMetadata>(), It.IsAny<ControllerContext>())) .Returns(new[] { mockValidator.Object }); ModelValidatorProviders.Providers.Add(mockValidatorProvider.Object); // Act htmlHelper.Validate("baz"); // Assert Assert.NotNull(formContext.GetValidationMetadataForField("baz")); Assert.Equal(expectedValidationRules, formContext.FieldValidators["baz"].ValidationRules.ToArray()); } finally { ModelValidatorProviders.Providers.Clear(); foreach (var provider in originalProviders) { ModelValidatorProviders.Providers.Add(provider); } } }
public void BeginFormSetsAndRestoresFormContext() { // Arrange Mock<HttpResponseBase> mockHttpResponse; HtmlHelper htmlHelper = GetFormHelper(@"<form action=""/some/path"" method=""post"">", @"</form>", out mockHttpResponse); FormContext originalContext = new FormContext(); htmlHelper.ViewContext.FormContext = originalContext; // Act & assert - push MvcForm theForm = htmlHelper.BeginForm(); Assert.IsNotNull(htmlHelper.ViewContext.FormContext); Assert.AreNotEqual(originalContext, htmlHelper.ViewContext.FormContext, "FormContext should have been set to a new instance."); // Act & assert - pop theForm.Dispose(); Assert.AreEqual(originalContext, htmlHelper.ViewContext.FormContext, "FormContext was not properly restored."); }
public void GetJsonValidationMetadata_ValidationSummary() { // Arrange FormContext context = new FormContext() { FormId = "theFormId", ValidationSummaryId = "validationSummary" }; ModelClientValidationRule rule = new ModelClientValidationRule() { ValidationType = "ValidationType1", ErrorMessage = "Error Message" }; rule.ValidationParameters["theParam"] = new { FirstName = "John", LastName = "Doe", Age = 32 }; FieldValidationMetadata metadata = new FieldValidationMetadata() { FieldName = "theFieldName", ValidationMessageId = "theFieldName_ValidationMessage" }; metadata.ValidationRules.Add(rule); context.FieldValidators["theFieldName"] = metadata; // Act string jsonMetadata = context.GetJsonValidationMetadata(); // Assert string expected = @"{""Fields"":[{""FieldName"":""theFieldName"",""ReplaceValidationMessageContents"":false,""ValidationMessageId"":""theFieldName_ValidationMessage"",""ValidationRules"":[{""ErrorMessage"":""Error Message"",""ValidationParameters"":{""theParam"":{""FirstName"":""John"",""LastName"":""Doe"",""Age"":32}},""ValidationType"":""ValidationType1""}]}],""FormId"":""theFormId"",""ReplaceValidationSummary"":false,""ValidationSummaryId"":""validationSummary""}"; Assert.Equal(expected, jsonMetadata); }
private static void OutputClientValidation(HttpResponseBase response, FormContext formContext) { if (!formContext.ClientValidationEnabled) { return; // do nothing } // output a call that resembles: // _clientValidationFunction(validationObject, userContext); string validationJson = formContext.GetJsonValidationMetadata(); string userContextJson = (formContext.ClientValidationState != null) ? new JavaScriptSerializer().Serialize(formContext.ClientValidationState) : "null"; string scriptWithCorrectNewLines = _clientValidationScript.Replace("\r\n", Environment.NewLine); string formatted = String.Format(CultureInfo.InvariantCulture, scriptWithCorrectNewLines, formContext.ClientValidationFunction, validationJson, userContextJson); response.Write(formatted); }
public void GetUnobtrusiveValidationAttributesUsesShortNameForModelMetadataLookup() { // Arrange string passedName = null; var formContext = new FormContext(); var viewContext = new Mock<ViewContext>(); var viewData = new ViewDataDictionary(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); viewData.TemplateInfo.HtmlFieldPrefix = "Prefix"; var viewDataContainer = MvcHelper.GetViewDataContainer(viewData); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); htmlHelper.ClientValidationRuleFactory = (name, _) => { passedName = name; return Enumerable.Empty<ModelClientValidationRule>(); }; // Act htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.Equal("foobar", passedName); }
public void GetUnobtrusiveValidationAttributeUsesViewDataForModelMetadataLookup() { // Arrange var formContext = new FormContext(); var viewContext = new Mock<ViewContext>(); var viewData = new ViewDataDictionary<MyModel>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); viewData.TemplateInfo.HtmlFieldPrefix = "Prefix"; var viewDataContainer = MvcHelper.GetViewDataContainer(viewData); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); // Act IDictionary<string, object> result = htmlHelper.GetUnobtrusiveValidationAttributes("MyProperty"); // Assert Assert.Equal(2, result.Count); Assert.Equal("true", result["data-val"]); Assert.Equal("My required message", result["data-val-required"]); }
public void GetUnobtrusiveValidationAttributesMessageIsNotHtmlEncoded() { // Arrange var formContext = new FormContext(); var viewContext = new Mock<ViewContext>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); var viewDataContainer = MvcHelper.GetViewDataContainer(new ViewDataDictionary()); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); htmlHelper.ClientValidationRuleFactory = delegate { return new[] { new ModelClientValidationRule { ValidationType = "type", ErrorMessage = "<script>alert('xss')</script>" } }; }; // Act IDictionary<string, object> result = htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.Equal("<script>alert('xss')</script>", result["data-val-type"]); }
public void GetUnobtrusiveValidationAttributesWithTwoClientRules() { // Arrange var formContext = new FormContext(); var viewContext = new Mock<ViewContext>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); var viewDataContainer = MvcHelper.GetViewDataContainer(new ViewDataDictionary()); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); htmlHelper.ClientValidationRuleFactory = delegate { ModelClientValidationRule rule1 = new ModelClientValidationRule { ValidationType = "type", ErrorMessage = "error" }; rule1.ValidationParameters["foo"] = "bar"; rule1.ValidationParameters["baz"] = "biff"; ModelClientValidationRule rule2 = new ModelClientValidationRule { ValidationType = "othertype", ErrorMessage = "othererror" }; rule2.ValidationParameters["true3"] = "false4"; return new[] { rule1, rule2 }; }; // Act IDictionary<string, object> result = htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.Equal("error", result["data-val-type"]); Assert.Equal("bar", result["data-val-type-foo"]); Assert.Equal("biff", result["data-val-type-baz"]); Assert.Equal("othererror", result["data-val-othertype"]); Assert.Equal("false4", result["data-val-othertype-true3"]); }
public void GetUnobtrusiveValidationAttributesReturnsEmptySetAndSetsFieldAsRenderedForFieldWithNoClientRules() { // Arrange var formContext = new FormContext(); var viewContext = new Mock<ViewContext>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); var viewDataContainer = MvcHelper.GetViewDataContainer(new ViewDataDictionary()); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); htmlHelper.ClientValidationRuleFactory = delegate { return Enumerable.Empty<ModelClientValidationRule>(); }; // Act IDictionary<string, object> result = htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.Empty(result); Assert.True(formContext.RenderedField("foobar")); }
public void GetUnobtrusiveValidationAttributesIncludesDataValTrueWithNonEmptyClientRuleList() { // Arrange var formContext = new FormContext(); var viewContext = new Mock<ViewContext>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); var viewDataContainer = MvcHelper.GetViewDataContainer(new ViewDataDictionary()); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); htmlHelper.ClientValidationRuleFactory = delegate { return new[] { new ModelClientValidationRule { ValidationType = "type" } }; }; // Act IDictionary<string, object> result = htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.Equal("true", result["data-val"]); }
public void GetUnobtrusiveValidationAttributesReturnsEmptySetWhenClientValidationIsNotEnabled() { // Arrange var formContext = new FormContext(); formContext.RenderedField("foobar", true); var viewContext = new Mock<ViewContext>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); var viewDataContainer = MvcHelper.GetViewDataContainer(new ViewDataDictionary()); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); // Act IDictionary<string, object> result = htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.AreEqual(0, result.Count); }
public void GetValidationMetadataForField_NoCreate_ReturnsMetadataIfFound() { // Arrange FormContext context = new FormContext(); FieldValidationMetadata metadata = new FieldValidationMetadata(); context.FieldValidators["fieldName"] = metadata; // Act FieldValidationMetadata result = context.GetValidationMetadataForField("fieldName"); // Assert Assert.NotNull(result); Assert.Equal(metadata, result); }
public void ValidationMessageWithClientValidation_DefaultMessage_Valid() { var originalProviders = ModelValidatorProviders.Providers.ToArray(); ModelValidatorProviders.Providers.Clear(); try { // Arrange HtmlHelper htmlHelper = MvcHelper.GetHtmlHelper(GetViewDataWithModelErrors()); FormContext formContext = new FormContext(); htmlHelper.ViewContext.ClientValidationEnabled = true; htmlHelper.ViewContext.FormContext = formContext; ModelClientValidationRule[] expectedValidationRules = new ModelClientValidationRule[] { new ModelClientValidationRule() { ValidationType = "ValidationRule1" }, new ModelClientValidationRule() { ValidationType = "ValidationRule2" } }; Mock<ModelValidator> mockValidator = new Mock<ModelValidator>(ModelMetadata.FromStringExpression("", htmlHelper.ViewContext.ViewData), htmlHelper.ViewContext); mockValidator.Setup(v => v.GetClientValidationRules()) .Returns(expectedValidationRules); Mock<ModelValidatorProvider> mockValidatorProvider = new Mock<ModelValidatorProvider>(); mockValidatorProvider.Setup(vp => vp.GetValidators(It.IsAny<ModelMetadata>(), It.IsAny<ControllerContext>())) .Returns(new[] { mockValidator.Object }); ModelValidatorProviders.Providers.Add(mockValidatorProvider.Object); // Act MvcHtmlString html = htmlHelper.ValidationMessage("baz"); // 'baz' is valid // Assert Assert.Equal("<span class=\"field-validation-valid\" id=\"baz_validationMessage\"></span>", html.ToHtmlString()); Assert.NotNull(formContext.GetValidationMetadataForField("baz")); Assert.Equal("baz_validationMessage", formContext.FieldValidators["baz"].ValidationMessageId); Assert.True(formContext.FieldValidators["baz"].ReplaceValidationMessageContents); Assert.Equal(expectedValidationRules, formContext.FieldValidators["baz"].ValidationRules.ToArray()); } finally { ModelValidatorProviders.Providers.Clear(); foreach (var provider in originalProviders) { ModelValidatorProviders.Providers.Add(provider); } } }
public void ValidationMessageForWithClientValidation_Unobtrusive() { var originalProviders = ModelValidatorProviders.Providers.ToArray(); ModelValidatorProviders.Providers.Clear(); try { // Arrange HtmlHelper<ValidationModel> htmlHelper = MvcHelper.GetHtmlHelper(GetViewDataWithModelErrors()); FormContext formContext = new FormContext(); htmlHelper.ViewContext.ClientValidationEnabled = true; htmlHelper.ViewContext.UnobtrusiveJavaScriptEnabled = true; htmlHelper.ViewContext.FormContext = formContext; ModelClientValidationRule[] expectedValidationRules = new ModelClientValidationRule[] { new ModelClientValidationRule() { ValidationType = "ValidationRule1" }, new ModelClientValidationRule() { ValidationType = "ValidationRule2" } }; Mock<ModelValidator> mockValidator = new Mock<ModelValidator>(ModelMetadata.FromStringExpression("", htmlHelper.ViewContext.ViewData), htmlHelper.ViewContext); mockValidator.Setup(v => v.GetClientValidationRules()) .Returns(expectedValidationRules); Mock<ModelValidatorProvider> mockValidatorProvider = new Mock<ModelValidatorProvider>(); mockValidatorProvider.Setup(vp => vp.GetValidators(It.IsAny<ModelMetadata>(), It.IsAny<ControllerContext>())) .Returns(new[] { mockValidator.Object }); ModelValidatorProviders.Providers.Add(mockValidatorProvider.Object); // Act MvcHtmlString html = htmlHelper.ValidationMessageFor(m => m.baz); // Assert Assert.AreEqual(@"<span class=""field-validation-valid"" data-valmsg-for=""baz"" data-valmsg-replace=""true""></span>", html.ToHtmlString(), "ValidationMessageFor() should always return something if client validation is enabled."); } finally { ModelValidatorProviders.Providers.Clear(); foreach (var provider in originalProviders) { ModelValidatorProviders.Providers.Add(provider); } } }
public void ValidationMessageWithClientValidation_ExplicitMessage_Valid_Unobtrusive() { var originalProviders = ModelValidatorProviders.Providers.ToArray(); ModelValidatorProviders.Providers.Clear(); try { // Arrange HtmlHelper htmlHelper = MvcHelper.GetHtmlHelper(GetViewDataWithModelErrors()); FormContext formContext = new FormContext(); htmlHelper.ViewContext.ClientValidationEnabled = true; htmlHelper.ViewContext.UnobtrusiveJavaScriptEnabled = true; htmlHelper.ViewContext.FormContext = formContext; ModelClientValidationRule[] expectedValidationRules = new ModelClientValidationRule[] { new ModelClientValidationRule() { ValidationType = "ValidationRule1" }, new ModelClientValidationRule() { ValidationType = "ValidationRule2" } }; Mock<ModelValidator> mockValidator = new Mock<ModelValidator>(ModelMetadata.FromStringExpression("", htmlHelper.ViewContext.ViewData), htmlHelper.ViewContext); mockValidator.Setup(v => v.GetClientValidationRules()) .Returns(expectedValidationRules); Mock<ModelValidatorProvider> mockValidatorProvider = new Mock<ModelValidatorProvider>(); mockValidatorProvider.Setup(vp => vp.GetValidators(It.IsAny<ModelMetadata>(), It.IsAny<ControllerContext>())) .Returns(new[] { mockValidator.Object }); ModelValidatorProviders.Providers.Add(mockValidatorProvider.Object); // Act MvcHtmlString html = htmlHelper.ValidationMessage("baz", "some explicit message"); // 'baz' is valid // Assert Assert.Equal("<span class=\"field-validation-valid\" data-valmsg-for=\"baz\" data-valmsg-replace=\"false\">some explicit message</span>", html.ToHtmlString()); } finally { ModelValidatorProviders.Providers.Clear(); foreach (var provider in originalProviders) { ModelValidatorProviders.Providers.Add(provider); } } }
public void GetValidationMetadataForFieldThrowsIfFieldNameIsNull() { // Arrange FormContext context = new FormContext(); // Act & assert Assert.ThrowsArgumentNullOrEmpty( delegate { context.GetValidationMetadataForField(null); }, "fieldName"); }
public void RenderedFieldIsFalseByDefault() { // Arrange var context = new FormContext(); // Act bool result = context.RenderedField(Guid.NewGuid().ToString()); // Assert Assert.False(result); }
public void GetUnobtrusiveValidationAttributesMarksRenderedFieldsWithFullName() { // Arrange var formContext = new FormContext(); var viewContext = new Mock<ViewContext>(); var viewData = new ViewDataDictionary(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); viewData.TemplateInfo.HtmlFieldPrefix = "Prefix"; var viewDataContainer = MvcHelper.GetViewDataContainer(viewData); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); // Act htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.False(formContext.RenderedField("foobar")); Assert.True(formContext.RenderedField("Prefix.foobar")); }
public void GetUnobtrusiveValidationAttributesReturnsEmptySetWhenFieldHasAlreadyBeenRendered() { // Arrange var formContext = new FormContext(); formContext.RenderedField("foobar", true); var viewContext = new Mock<ViewContext>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); var viewDataContainer = MvcHelper.GetViewDataContainer(new ViewDataDictionary()); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); // Act IDictionary<string, object> result = htmlHelper.GetUnobtrusiveValidationAttributes("foobar"); // Assert Assert.Empty(result); }
public void GetUnobtrusiveValidationAttributesGuardClauses() { // Arrange var formContext = new FormContext(); var viewContext = new Mock<ViewContext>(); viewContext.SetupGet(vc => vc.FormContext).Returns(formContext); viewContext.SetupGet(vc => vc.ClientValidationEnabled).Returns(true); viewContext.SetupGet(vc => vc.UnobtrusiveJavaScriptEnabled).Returns(true); var viewDataContainer = MvcHelper.GetViewDataContainer(new ViewDataDictionary()); var htmlHelper = new HtmlHelper(viewContext.Object, viewDataContainer); // Act & Assert AssertBadClientValidationRule(htmlHelper, "Validation type names in unobtrusive client validation rules cannot be empty. Client rule type: System.Web.Mvc.ModelClientValidationRule", new ModelClientValidationRule()); AssertBadClientValidationRule(htmlHelper, "Validation type names in unobtrusive client validation rules must consist of only lowercase letters. Invalid name: \"OnlyLowerCase\", client rule type: System.Web.Mvc.ModelClientValidationRule", new ModelClientValidationRule { ValidationType = "OnlyLowerCase" }); AssertBadClientValidationRule(htmlHelper, "Validation type names in unobtrusive client validation rules must consist of only lowercase letters. Invalid name: \"nonumb3rs\", client rule type: System.Web.Mvc.ModelClientValidationRule", new ModelClientValidationRule { ValidationType = "nonumb3rs" }); AssertBadClientValidationRule(htmlHelper, "Validation type names in unobtrusive client validation rules must be unique. The following validation type was seen more than once: rule", new ModelClientValidationRule { ValidationType = "rule" }, new ModelClientValidationRule { ValidationType = "rule" }); var emptyParamName = new ModelClientValidationRule { ValidationType = "type" }; emptyParamName.ValidationParameters[""] = "foo"; AssertBadClientValidationRule(htmlHelper, "Validation parameter names in unobtrusive client validation rules cannot be empty. Client rule type: System.Web.Mvc.ModelClientValidationRule", emptyParamName); var paramNameMixedCase = new ModelClientValidationRule { ValidationType = "type" }; paramNameMixedCase.ValidationParameters["MixedCase"] = "foo"; AssertBadClientValidationRule(htmlHelper, "Validation parameter names in unobtrusive client validation rules must start with a lowercase letter and consist of only lowercase letters or digits. Validation parameter name: MixedCase, client rule type: System.Web.Mvc.ModelClientValidationRule", paramNameMixedCase); var paramNameStartsWithNumber = new ModelClientValidationRule { ValidationType = "type" }; paramNameStartsWithNumber.ValidationParameters["2112"] = "foo"; AssertBadClientValidationRule(htmlHelper, "Validation parameter names in unobtrusive client validation rules must start with a lowercase letter and consist of only lowercase letters or digits. Validation parameter name: 2112, client rule type: System.Web.Mvc.ModelClientValidationRule", paramNameStartsWithNumber); }
public void CanSetRenderedFieldToBeTrue() { // Arrange var context = new FormContext(); var name = Guid.NewGuid().ToString(); context.RenderedField(name, true); // Act bool result = context.RenderedField(name); // Assert Assert.True(result); }
public void GetValidationMetadataForField_NoCreate_ReturnsNullIfNotFound() { // Arrange FormContext context = new FormContext(); // Act FieldValidationMetadata result = context.GetValidationMetadataForField("fieldName"); // Assert Assert.Null(result); }
public FormContext form() { FormContext _localctx = new FormContext(Context, State); EnterRule(_localctx, 10, RULE_form); try { State = 214; switch ( Interpreter.AdaptivePredict(TokenStream,19,Context) ) { case 1: _localctx = new FormIdentifierContext(_localctx); EnterOuterAlt(_localctx, 1); { State = 209; Match(ID); } break; case 2: _localctx = new FormAssignmentContext(_localctx); EnterOuterAlt(_localctx, 2); { State = 210; Match(ID); State = 211; Match(T__2); State = 212; expr(0); } break; case 3: _localctx = new FormEllipsisContext(_localctx); EnterOuterAlt(_localctx, 3); { State = 213; Match(T__53); } break; } } catch (RecognitionException re) { _localctx.exception = re; ErrorHandler.ReportError(this, re); ErrorHandler.Recover(this, re); } finally { ExitRule(); } return _localctx; }