hi I create addproduct view in MVC project and put button on it to insert product info in database below arecodes
AddProduct view
@model MvcInternetShop.ViewModels.Admin.AddProductViewModel
@{
ViewBag.Title = "AddProduct";
}
@using (Html.BeginForm("AddProduct", "Admin", FormMethod.Post))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<h1 class="block-header">افزودن محصول</h1>
<div class="separator"></div>
<div class="block-standart">
<div class="form inline">
<div class="group">
@Html.LabelFor(model => model.Product.GroupId, new { @class = "label" })
<div class="controls">
@Html.Partial("_GroupList", @Model.Groups, new ViewDataDictionary { { "id", "Product_GroupId" }, { "name", "Product.GroupId" } })
</div>
</div>
<div class="group">
@Html.LabelFor(model => model.Product.Name, new { @class = "label" })
<div class="controls">
@Html.TextBoxFor(model => model.Product.Name, new { @class = "text", style = "width: 240px;" })
@Html.ValidationMessageFor(model => model.Product.Name)
</div>
</div>
<div class="group">
@Html.LabelFor(model => model.Product.Price, new { @class = "label" })
<div class="controls">
@Html.TextBoxFor(model => model.Product.Price, new { @class = "text", style = "width: 240px;" })
@Html.ValidationMessageFor(model => model.Product.Price)
</div>
</div>
<div class="group">
@Html.LabelFor(model => model.Product.Url, new { @class = "label" })
<div class="controls">
@Html.TextBoxFor(model => model.Product.Url, new { @class = "text", style = "width: 240px;" })
@Html.ValidationMessageFor(model => model.Product.Url)
</div>
</div>
<div class="group">
@Html.LabelFor(model => model.Product.Summery)
<div class="controls">
@Html.TextAreaFor(model => model.Product.Summery, new { @class = "text" })
@Html.ValidationMessageFor(model => model.Product.Summery)
</div>
</div>
<div style="margin-bottom: 22px;">
@Html.LabelFor(model => model.Product.Keywords, new { @class = "label" })
<div class="controls">
@Html.TextBoxFor(model => model.Product.Keywords, new { @class = "text" })
@Html.ValidationMessageFor(model => model.Product.Keywords)
</div>
</div>
<div style="margin-bottom: 22px;">
@Html.LabelFor(model => model.Product.Description, new { @class = "label" })
<div class="controls">
@Html.TextBoxFor(model => model.Product.Description, new { @class = "text", style = "width:85%;height: 35px;" })
@Html.ValidationMessageFor(model => model.Product.Description)
</div>
</div>
<div style="margin-bottom: 22px;">
@Html.LabelFor(model => model.Product.Tags, new { @class = "label" })
<div class="controls">
@Html.TextBoxFor(model => model.Product.Tags, new { @class = "text" })
@Html.ValidationMessageFor(model => model.Product.Tags)
</div>
</div>
<div class="group">
@Html.LabelFor(model => model.Product.Enabled, new { @class = "label" })
<div class="controls">
@Html.CheckBoxFor(model => model.Product.Enabled, new { @class = "text" })
@Html.ValidationMessageFor(model => model.Product.Enabled)
</div>
</div>
<div class="group">
@Html.LabelFor(model => model.Product.Image, new { @class = "label" })
<div class="controls">
@Html.Upload("UploadImage")
@Html.ValidationMessageFor(model => model.Product.Image)
</div>
</div>
</div>
</div>
<div class="separator"></div>
<div class="block-standart">
<div class="form">
<div class="group">
<div class="controls">
<button class="button">افزودن</button>
</div>
</div>
</div>
</div>
}
@section styles{
<link href="@Url.Content("~/Scripts/TagsInput/bootstrap-tagsinput.css")" rel="stylesheet" />
}
@section scripts{
@*<script src="~/Scripts/AjaxForm/jquery.form.min.js"></script>*@
<script src="@Url.Content("~/Scripts/AutoNumeric/jquery-price.js")"></script>
<script src="@Url.Content("~/Scripts/TagsInput/bootstrap-tagsinput.min.js")"></script>
@Html.CKEditorHeaderScripts()
<script>
$(function () {
$("#Product_Price").price();
$("#Product_Summery").ckeditor();
$("#Product_Keywords").keypress(function (event) {
if (event.keyCode == 13) {
event.preventDefault();
}
}).tagsinput();
$("#Product_Tags").keypress(function (event) {
if (event.keyCode == 13) {
event.preventDefault();
}
}).tagsinput();
});
$("#myUploadForm").ajaxForm();
</script>
}
and admincontroller
public ActionResult AddProduct()
{
var model = new AddProductViewModel();
model.Groups = blGroup.Select();
return View(model);
}
[AjaxOnly]
[HttpPost]
public ActionResult AddProduct(Product product, HttpPostedFileBase UploadImage)
{
ProductRepository blProduct = new ProductRepository();
if (ModelState.IsValid)
{
product.Image = UploadImage.FileName;
string path = Server.MapPath("~") + "Files\\UploadImages\\" + UploadImage.FileName;
UploadImage.InputStream.ResizeImageByWidth(500, path, Utilty.ImageComperssion.Normal);
if (blProduct.Add(product))
{
return MessageBox.Show("محصول با موفقیت ثبت شد", MessageType.Success);
}
else
{
System.IO.File.Delete(path);
return MessageBox.Show("محصول ثبت نشد", MessageType.Error);
}
}
else
{
//مقدار ورودی اشتباه
return MessageBox.Show(ModelState.GetErrors(), MessageType.Warning);
}
}
now when I run view it ran correctly without any error but when I enter data in textboxs and click button to insert data into datbase below error accure
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
what should I do for solving this problem
best regards
neda