<div class="form-group">
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="text" name="pop_cust_name" id="pop_cust_name" class="form-control" placeholder="Full Name">*@
@*@Html.TextBox("Customer_Name", null, new { @class = "form-control", @placeholder = "Full Name" })*@
@Html.TextBoxFor(m => m.Customer_Name, new { @class = "form-control", @placeholder = "Full Name" })
@Html.HiddenFor( m => m.Customer_ID)
@Html.ValidationMessageFor(m => m.Customer_Name, null, new { @class = "text-danger" })
</div>
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="text" name="pop_cust_mob" id="pop_cust_mob" class="form-control" placeholder="Enter Mobile">*@
@*@Html.TextBox("Customer_Mobile", null, new { @class = "form-control", @placeholder = "Enter Mobile" })*@
@Html.TextBoxFor(m => m.Customer_Mobile, new { @class = "form-control", @placeholder = "Enter Mobile" })
@Html.ValidationMessageFor(m => m.Customer_Mobile, null, new { @class = "text-danger" })
</div>
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="Email" name="pop_cust_email" id="pop_cust_email" class="form-control" placeholder="Enter Email">*@
@*@Html.TextBox("Customer_Email", null, new { @class = "form-control", @placeholder = "Enter Email" })*@
@Html.TextBoxFor(m => m.Customer_Email, new { @class = "form-control", @placeholder = "Enter Email" })
@Html.ValidationMessageFor(m => m.Customer_Email, null, new { @class = "text-danger" })
</div>
</div>
<div class="col col-sm-12 col-xs-12 col-md-12 col-lg-12" style="height:10px"></div>
<div class="form-group">
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="text" name="pop_cust_company" id="pop_cust_company" class="form-control" placeholder="Enter Company Name">*@
@*@Html.TextBox("Customer_Company", null, new { @class = "form-control", @placeholder = "Enter Company Name" })*@
@Html.TextBoxFor(m => m.Customer_Company, new { @class = "form-control", @placeholder = "Enter Company Name" })
</div>
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="text" name="pop_cust_fax" id="pop_cust_fax" class="form-control" placeholder="Enter Fax">*@
@*@Html.TextBox("Customer_Fax", null, new { @class = "form-control", @placeholder = "Enter Fax" })*@
@Html.TextBoxFor(m => m.Customer_Fax, new { @class = "form-control", @placeholder = "Enter Fax" })
</div>
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="text" name="pop_cust_other" id="pop_cust_other" class="form-control" placeholder="Enter Other">*@
@*@Html.TextBox("Customer_Other", null, new { @class = "form-control", @placeholder = "Enter Other" })*@
@Html.TextBoxFor(m => m.Customer_Other, new { @class = "form-control", @placeholder = "Enter Other" })
</div>
</div>
<div class="col col-sm-12 col-xs-12 col-md-12 col-lg-12" style="height:10px"></div>
<div class="col col-sm-12 col-xs-12 col-md-8 col-lg-8"></div>
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
<div class="checkbox">
<label>
<input type="checkbox">Same as billing address
</label>
</div>
</div>
<div class="col col-sm-12 col-xs-12 col-md-12 col-lg-12" style="height:10px"></div>
<div class="form-group">
<div class="col col-sm-12 col-xs-12 col-md-6 col-lg-6">
@*<textarea class="form-control" name="pop_cust_bill_address" rows="3" placeholder="Billing address"></textarea>*@
@*@Html.TextArea("Customer_BillingAddresss", null, new { @class = "form-control", @placeholder = "Billing address" })*@
@Html.TextAreaFor(m => m.Customer_BillingAddresss, new { @class = "form-control", @placeholder = "Billing Address" })
@Html.ValidationMessageFor(m => m.Customer_BillingAddresss, null, new { @class = "text-danger" })
</div>
<div class="col col-sm-12 col-xs-12 col-md-6 col-lg-6">
@*<textarea class="form-control" name="pop_cust_ship_address" rows="3" placeholder="Shipping address"></textarea>*@
@*@Html.TextArea("Customer_ShippingAddress", null, new { @class = "form-control", @placeholder = "Shipping address" })*@
@Html.TextAreaFor(m => m.Customer_ShippingAddress, new { @class = "form-control", @placeholder = "Shipping Address" })
@Html.ValidationMessageFor(m => m.Customer_ShippingAddress, null, new { @class = "text-danger" })
</div>
</div>
<div class="col col-sm-12 col-xs-12 col-md-12 col-lg-12" style="height:10px"></div>
<div class="form-group">
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="text" name="pop_cust_pan_no" id="pop_cust_pan_no" class="form-control" placeholder="Enter PAN No">*@
@*@Html.TextBox("Customer_PanNo", null, new { @class = "form-control", @placeholder = "Enter PAN No" })*@
@Html.TextBoxFor(m => m.Customer_PanNo, new { @class = "form-control", @placeholder = "Enter PAN No" })
@Html.ValidationMessageFor(m => m.Customer_PanNo, null, new { @class = "text-danger" })
</div>
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="text" name="pop_cust_gst_num" id="pop_cust_gst_num" class="form-control" placeholder="Enter GSTIN">*@
@*@Html.TextBox("Customer_GSTIN", null, new { @class = "form-control", @placeholder = "Enter GSTIN" })*@
@Html.TextBoxFor(m => m.Customer_GSTIN, new { @class = "form-control", @placeholder = "Enter GSTIN" })
</div>
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4">
@*<input type="text" name="pop_cust_gst_clr" id="pop_cust_gst_clr" class="form-control" placeholder="Enter CLR">*@
@*@Html.TextBox("Customer_CLR", null, new { @class = "form-control", @placeholder = "Enter CLR" })*@
@Html.TextBoxFor(M => M.Customer_CLR, new { @class = "form-control", @placeholder = "Enter CLR" })
</div>
</div>
<div class="col col-sm-12 col-xs-12 col-md-12 col-lg-12" style="height:10px"></div>
<div class="form-group">
<div class="col col-sm-12 col-xs-12 col-md-8 col-lg-8">
@*<textarea class="form-control" rows="3" placeholder="Note"></textarea>*@
@*@Html.TextArea("Customer_Note", null, new { @class = "form-control", @placeholder = "Note" })*@
@Html.TextAreaFor(m => m.Customer_Note, new { @class = "form-control", @placeholder = "Note" })
</div>
</div>
<div class="col col-sm-12 col-xs-12 col-md-4 col-lg-4"></div>
</div>
<div class="modal-footer" >
<button type="submit" name="save_pop" id="save_pop" class="btn btn-success" formaction = '@Url.Action("AddCustomer", "Customers")'>Save</button>
<button type="submit" name="update_pop" id="update_pop" style="display:none" class="btn btn-success" formaction='@Url.Action("UpdateCustomer", "Customers")'>Update</button>
@*<input type="submit" value="Save" class="btn btn-success" onclick="location.href='@Url.Action("AddCustomer", "Customers")'" />*@
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancel</button>
</div>
</form>
我的控制器代码是
[HttpPost]
public ActionResult AddCustomer(CustomerEntities customerentities)
{
customerentities.Customer_Name = Request["Customer_Name"].ToString();
customerentities.Customer_Mobile = Request["Customer_Mobile"].ToString();
customerentities.Customer_Email = Request["Customer_Email"].ToString();
customerentities.Customer_Company = Request["Customer_Company"].ToString();
customerentities.Customer_Fax = Request["Customer_Fax"].ToString();
customerentities.Customer_Other = Request["Customer_Other"].ToString();
customerentities.Customer_BillingAddresss = Request["Customer_BillingAddresss"].ToString();
customerentities.Customer_ShippingAddress = Request["Customer_ShippingAddress"].ToString();
customerentities.Customer_PanNo = Request["Customer_PanNo"].ToString();
customerentities.Customer_GSTIN = Request["Customer_GSTIN"].ToString();
customerentities.Customer_CLR = Request["Customer_CLR"].ToString();
customerentities.Customer_Note = Request["Customer_Note"].ToString();
customerentities.User_ID = 1;
if (ModelState.IsValid)
{
CustomerRepository custRepo = new InvoiceProcessingSystem.CustomerRepository();
if (custRepo.AddCustomer(customerentities))
{
TempData["AddCustomer"] = "Customer details added successfully";
}
return RedirectToAction("Index");
}
return RedirectToAction("Index", customerentities);
}
由于没有控制器AddCustomer的视图所以我将它与模型一起重定向到Index视图,因为我试图在单个视图中进行CRUD。
最后我的模型代码是:
public int Customer_ID { get; set; }
[Required(ErrorMessage = "Customer Name is required")]
public string Customer_Name { get; set; }
//[Required(ErrorMessage = "Customer Mobile is required")]
[DataType(DataType.PhoneNumber)]
[RegularExpression(@"^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$", ErrorMessage = "Not a valid Mobile number")]
public string Customer_Mobile { get; set; }
//[Required(ErrorMessage = "Customer Email is required")]
[EmailAddress(ErrorMessage = "Enter a valid Email Address")]
public string Customer_Email { get; set; }
//[Required(ErrorMessage = "Customer Company is required")]
public string Customer_Company { get; set; }
public string Customer_Fax { get; set; }
public string Customer_Other { get; set; }
//[Required(ErrorMessage = "Customer Billing is required")]
[MaxLength(500)]
public string Customer_BillingAddresss { get; set; }
//[Required(ErrorMessage = "Customer Shipping Address is required")]
[MaxLength(500)]
public string Customer_ShippingAddress { get; set; }
//[Required(ErrorMessage = "Customer PAN No. is required")]
[RegularExpression(@"[A-Z]{5}\d{4}[A-Z]{1}", ErrorMessage = "Not a valid Mobile number")]
public string Customer_PanNo { get; set; }
//[Required(ErrorMessage = "Customer GSTIN is required")]
public string Customer_GSTIN { get; set; }
//[Required(ErrorMessage = "Customer CLR is required")]
public string Customer_CLR { get; set; }
public string Customer_Note { get; set; }
//[Required(ErrorMessage = "Customer Name is required")]
public int User_ID { get; set; }
我不太确定我在这里做错了什么,因为我是MVC的新手,但我之前没有使用模型验证,但我无法弄清楚我的代码在这里是什么问题。
答案 0 :(得分:0)
如果您希望客户端验证,请确保以下内容:
第1步:在web.config中添加以下内容
<appSettings>
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>
第2步:参考jquery.validate.js
index.cshtml