学用MVC4做网站三:3.3更新栏目

news/2024/5/9 13:22:10/文章来源:https://blog.csdn.net/weixin_30629653/article/details/96986383

一、用户

二、用户组

三、栏目

3.1添加栏目

3.2浏览栏目

3.3更新栏目

上次在树形列表里面点击栏目名称后跳转到详细信息页面~/Category/ManageDetails/id。在详细页面里点修改,来完成栏目资料修改。

先打开【CategoryController】添加[ManageDetails(int id)]action

/// <summary>/// 栏目详细资料/// </summary>/// <param name="id"></param>/// <returns></returns>public ActionResult ManageDetails(int id){categoryRsy = new CategoryRepository();var _node = categoryRsy.Find(id);if (_node == null){Error _e = new Error { Title = "栏目不存在", Details = "栏目不存在", Cause =  Server.UrlEncode("<li>栏目已经删除</li>"), Solution = Server.UrlEncode("<li>返回<a href='" + Url.Action("Manage", "Cayegory") + "'>栏目栏目管理</a></li>") };return RedirectToAction("ManageError", "Prompt", _e);}ModuleRepository _moduleRsy = new ModuleRepository();var _modules = _moduleRsy.List(true);List<SelectListItem> _slimodule = new List<SelectListItem>(_modules.Count());foreach (Module _module in _modules){if (_node.Model == _module.Model) _slimodule.Add(new SelectListItem { Text = _module.Name, Value = _module.Model, Selected = true });else _slimodule.Add(new SelectListItem { Text = _module.Name, Value = _module.Model });}ViewData.Add("Model", _slimodule);var _type = TypeSelectList;_type.SingleOrDefault(t => t.Value == _node.Type.ToString()).Selected = true;ViewData.Add("Type", _type);return View(_node);}

代码先是看栏目是否存在,不存在跳转到错误页面,后面是添加"Model“和“Type”的ViewData

右键添加强类型视图ManageDetails.cshtml,内容基本与ManageAdd.cshtml类似

@model Ninesky.Models.Category@{ViewBag.Title = "栏目信息";Layout = "~/Views/Layout/_Manage.cshtml";
}<div class="workspace"><div class="inside"><div class="notebar"><img alt="" src="~/Skins/Default/Manage/Images/Category.gif" />栏目信息</div>@using (Html.BeginForm("ManageUpdate","Category")){@Html.ValidationSummary(true)<fieldset><legend>详细资料</legend><ul>@Html.HiddenFor(model => model.CategoryId)<li><div class="editor-label">@Html.LabelFor(model => model.CategoryId)</div><div class="editor-field">@Html.DisplayTextFor(model => model.CategoryId)</div></li><li><div class="editor-label">@Html.LabelFor(model => model.Name)</div><div class="editor-field">@Html.EditorFor(model => model.Name)@Html.ValidationMessageFor(model => model.Name)</div></li><li><div class="editor-label">@Html.LabelFor(model => model.ParentId)</div><div class="editor-field">@Html.TextBoxFor(model => model.ParentId, new { @class = "easyui-combotree", data_options = "url:'" + Url.Action("JsonTreeParent", "Category") + "'" })@Html.ValidationMessageFor(model => model.ParentId)</div></li><li><div class="editor-label">@Html.LabelFor(model => model.Type)</div><div class="editor-field">@Html.DropDownList("Type")@Html.ValidationMessageFor(model => model.Type)</div></li><li id="li_model"><div class="editor-label">@Html.LabelFor(model => model.Model)</div><div class="editor-field">@Html.DropDownList("Model")@Html.ValidationMessageFor(model => model.Model)</div></li><li id="li_categoryview"><div class="editor-label">@Html.LabelFor(model => model.CategoryView)</div><div class="editor-field">@Html.EditorFor(model => model.CategoryView)@Html.ValidationMessageFor(model => model.CategoryView)</div></li><li id="li_contentview"><div class="editor-label">@Html.LabelFor(model => model.ContentView)</div><div class="editor-field">@Html.EditorFor(model => model.ContentView)@Html.ValidationMessageFor(model => model.ContentView)</div></li><li id="li_nav"><div class="editor-label">@Html.LabelFor(model => model.Navigation)</div><div class="editor-field">@Html.EditorFor(model => model.Navigation)@Html.ValidationMessageFor(model => model.Navigation)</div></li><li><div class="editor-label">@Html.LabelFor(model => model.Order)</div><div class="editor-field">@Html.EditorFor(model => model.Order)@Html.ValidationMessageFor(model => model.Order)</div></li><li><div class="editor-label"><input id="Submit1" type="submit" value="修改" /></div><div class="editor-field"></div></li></ul></fieldset>}</div>
</div>
<div class="left"><div class="top"></div>@Html.Action("ManagePartialTree", "Category")
</div>
<div class="split"></div>
<div class="clear"></div>
<script type="text/javascript">Details();$("#Type").change(function () {Details();});function Details() {var v = $("#Type").val();if (v == "0") {$("#li_model").show();$("#li_categoryview").show();$("#li_contentview").show();$("#li_nav").hide();$("#Navigation").val("");}else if (v == "1") {$("#li_model").hide();$("#li_categoryview").show();$("#li_contentview").hide();$("#ContentView").val("");$("#li_nav").hide();$("#Navigation").val("");}else if (v == "2") {$("#li_model").hide();$("#li_categoryview").hide();$("#CategoryView").val("");$("#li_contentview").hide();$("#ContentView").val("");$("#li_nav").show();}}
</script>
@section Scripts {@Styles.Render("~/EasyUi/icon")@Scripts.Render("~/bundles/EasyUi")@Scripts.Render("~/bundles/jqueryval")
}

注意的是 @using (Html.BeginForm("ManageUpdate","Category"))这句;表示点修改按钮的后是向ManageUpdate提交数据。下面开始做这个action

在【CategoryController】里添加httppost方式的[ManageUpdate]action

/// <summary>/// 修改栏目信息/// </summary>/// <param name="category"></param>/// <returns></returns>public ActionResult ManageUpdate(Category category){switch (category.Type){case 0:category.Navigation = "";break;case 1:category.Model = "";category.ContentView = "";category.Navigation = "";break;case 2:category.Model = "";category.CategoryView = "";category.ContentView = "";break;}categoryRsy = new CategoryRepository();if (categoryRsy.Update(category)){Notice _n = new Notice { Title = "修改栏目成功", Details = "修改栏目成功!", DwellTime = 5, NavigationName = "栏目详细信息", NavigationUrl = Url.Action("ManageDetails", "Category", new { id = category.CategoryId }) };return RedirectToAction("ManageNotice", "Prompt", _n);}else{Error _e = new Error { Title = "修改栏目失败", Details = "在修改栏目信息时,未能保存到数据库", Cause = "系统错误", Solution = Server.UrlEncode("<li>返回<a href='" + Url.Action("ManageDetails", "Category", new { id = category.CategoryId }) + "'>栏目详细资料</a>页面,修改信息后重新操作</li><li>联系网站管理员</li>") };return RedirectToAction("ManageError", "Prompt", _e);}}

很简单,首先是判断栏目类型,根据栏目类型清除无关数据,然后将修改保存到数据库。

试一下将“测试栏目”改成“公司简介”

image

image

保存成功!

=================================

代码包:http://pan.baidu.com/share/link?shareid=128528&uk=2198133459

转载于:https://www.cnblogs.com/mzwhj/archive/2012/11/29/2794465.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_782164.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LAMP网站架构方案分析【精辟】

LAMP&#xff08;Linux- Apache-MySQL-PHP&#xff09;网站架构是目前国际流行的Web框架&#xff0c;该框架包括&#xff1a;Linux操作系统&#xff0c;Apache网络服务器&#xff0c;MySQL数据库&#xff0c;Perl、PHP或者Python编程语言&#xff0c;所有组成产品均是开源软件&…

30个带给你灵感的 iPhone 应用程序网站设计

这篇文章向大家分享30个漂亮的 iPhone 应用程序网站设计作品&#xff0c;希望这些实例能带给你灵感&#xff0c;一起欣赏。 Routes Camera Decrescendo Interface Diet2Go Task This Grades Headquarters bowtie Here, File File! 2Do Lite Weight My Desk Borange TimeTurner…

Linux系统用脚本轻松搭建Apache网站服务器

您能学到什么? 明白Apache适用于哪种场景下; 源码编译安装的方式构建httpd服务器的两种方法, 一种常规安装,另一种脚本快速安装 Apache简介 编译安装httpd服务器步骤 构建httpd服务器实验

Linux系统搭建Web网站服务器之访问控制与虚拟web主机

httpd服务访问控制概述 作用 控制对网站资源的访问为特定的网站目录添加访问授权控制方式 客户机地址限制用户授权限制实验案例 要求: 1、www.bdqn1.com增加用户验证,网页目录为/bdqn/个人名 2、www.bdqn2.com 只允许192.168.10.0/24网段访问,网页目录为/个人名 提示:分…

社交网站的数据挖掘与分析

关于本书&#xff1a;【互动网】【卓越网】【当当网】【京东网】【豆瓣网】 《社交网站的数据挖掘与分析》前言&#xff08;原书名&#xff1a;Mining the Social Web&#xff0c;2011年Jolt生产效率大奖获奖图书&#xff09;与其说网络是一项技术创新&#xff0c;不如说它是一…

不学其他了!Apache部署了这么好玩的网站

相关术语 提示&#xff1a;怎么让您看起来像专业人士&#xff0c;先知道这些 何为HTTP协议&#xff1f;是超文本传输协议&#xff0c;Hyper Text transfer protocal&#xff08;发明者&#xff1a;蒂姆.伯纳斯.李&#xff09; 1.超文本 包含超链接(link)和各种多媒体元素的文…

面试常备知识-Linux网站架构优化

启用网站压缩deflate 提示&#xff1a;以Apache为例 1.查看并启用mod_deflate ,压缩传输 查看mod_deflate&#xff1a;提示未找到 打开网页查看&#xff1a;也没有压缩响应头 2.在httpd.conf配置文件末尾&#xff0c;添加deflate参数配置 vim /usr/local/httpd/conf/httpd.…

饿了吗?一饱眼福-不能不懂的web网站架构负载均衡群集

理论 1、web搭建网站有哪些方式实现负载均衡与高可用性能&#xff1f; Nginx&#xff1a;反向代理&#xff0c;适用于中小型网站服务 优点&#xff1a;工作在七层之上&#xff0c;针对HTTP做分流策略&#xff0c;正则规则haproxy更灵活对网络的稳定性依赖小安装配置简单高负载…

轻松搭建web网站架构服务

学习目标&#xff1a; 搭建lnmp网站架构&#xff0c;实现负载均衡、高可用&#xff0c;以及https&#xff0c;并通过NFS优化数据存储。 服务器IP地址web1192.168.2.137web2192.168.2.136mysql192.168.2.133PHP192.168.2.130lb(keepalived)1192.168.2.135lb(keepalived)2192.1…

云计算必备-企业架构网站综合项目

目录流程一、实现效果二、步骤1.实施规范2.实施流程总结流程 1.需求分析&#xff0c;写项目规划书&#xff08;项目经理、技术总监cto&#xff09; 2.画架构图&#xff0c;将架构分解成各种模块&#xff08;架构师&#xff09; 3.各模块实施和测试&#xff08;运维工程师&…

Asp.NET MVC 拍卖网站,拆解【1】预览与目录

本人最近带创业团队基本做完了一个艺术品拍卖的外包项目&#xff0c;分为网站前台&#xff08;asp.net mvc5&#xff09;&#xff0c;网站管理员管理的后台使用的9900端口&#xff08;asp.net mvc5&#xff09;&#xff0c;监听拍卖状态的windows服务&#xff0c;为手机端提供服…

html5相关网站

2019独角兽企业重金招聘Python工程师标准>>> http://designmodo.com/ 非常非常多的下载资源 UI界面 http://www.cnblogs.com/lhb25/ 有很多好的文章 http://www.freebiesgallery.com/ 免费psd http://medialoot.com 免费模板 http://chocotemplates.com/ 模板下载 h…

如何解决国产TongWeb中间件启动之后无法访问网站管理后台界面

背景介绍&#xff1a;什么是国产TongWeb中间件呢&#xff1f; TongWeb7 是遵循 JavaEE7 Web Profile 规范的企业级应用服务器&#xff0c;它为企业应用提供了可靠、可伸缩、可管理和高安全的基础平台。同时具有功能完善、支持开放标准和基于组件开发、多层架构、轻量等特点&…

IIS 发布网站 ashx无法访问

IIS6 问题 1.是否安装相应的.net版本 2.查看.net版本是否一致 3.查看web 服务扩展中.net版本是否允许。 4.添加相应的MIME类型文件 在IIS中右键网站→属性→主目录→配置→添加 可执行文件路径:C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll 取消确认文件是…

网络爬虫-cnzz网站统计(umuuid参数加密破解)

总体来说算是比较easy的js加密 由于涉及到部分隐私 就简单说下该参数的加密思路 以马蜂窝为例 该网站使用的是CNZZ统计流量 首先抓包看参数&#xff0c;如图 可以比较清晰地看到 cnzz的统计是发起的这个get请求 然后看下这些参数 我们不确定的参数有 id / cnzz_eid / umuuid …

网站页面横幅维护以及实现方案(含详细代码)

在很多中小型的网站开发公司来讲&#xff0c;承担网站建设后的日常维护是极为重要的一部分工作&#xff1b;也为了后续的其他产品的推广积攒更好的客户关系&#xff1b;网站维护的现状绝大多数都是内容维护&#xff0c;功能维护及新增频率会少很多&#xff0c;针对于此现状&…

如何在电脑上测试手机网站(补充)和phonegap

颜海镜 介绍了专业人士精准测试手机网站的经验 http://www.cnblogs.com/yanhaijing/p/3557261.html, 因为太专业了&#xff0c;稍显复杂和琐碎&#xff0c;这里我介绍下我一直关注的的 inter XDK 去年的 xdk 是浏览器插件&#xff0c;今年用nodejs重写了&#xff0c;可见前端会…

Windows Azure 网站自愈

编辑人员注释&#xff1a;本文章由 Windows Azure 网站团队的项目经理Apurva Joshi 撰写。 您有多少次在半夜被叫醒去解决一个仅需重新启动网站即可解决的问题&#xff1f;要是可以自动检测一些状况并自动恢复该有多好&#xff01; 随着 Windows Azure 网站 (WAWS) 最新更新的推…

win2008r2的iis7.5手动建站方法,iis7.5中用独立用户建立网站的方法,提高网站安全性...

win2003的iis6手动建站方法,iis6中用独立用户建立网站的方法,提高网站安全性&#xff0c;我们前面的教程有说明&#xff0c;请看http://www.piis.cn/zhishi/web574.asp 现在我们说下在WIN2008R2环境中IIS7.5中手动建立网站并设置网站安全的方法&#xff1a; 设置以上身份…

快速排名 让人疯狂的黑帽seo技术

对于黑帽seo大家或许并不陌生&#xff0c;黑帽seo和白帽seo恰恰相反&#xff0c;是作弊手段。有白帽seo的时候&#xff0c;就有了黑帽seo一直到现在。但隔行如隔山这句话这句话一点都没错&#xff0c;再没接触黑帽seo技术之前我根本不知道黑帽seo能这么快的排名。今天我就解密下…