网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
08月10日漏签0天
广信it学院吧 关注:1,002贴子:19,416
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 1回复贴,共1页
<<返回广信it学院吧
>0< 加载中...

.net MVC简介、项目中每个文件夹的功能

  • 只看楼主
  • 收藏

  • 回复
  • 专熟你的傻瓜
  • 小有美名
    5
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
作者:任铭基,撰写时间:2019年6月18日
MVC是微软2009对外公布的第一个开源的表示层框架,这是微软的第一个开源项目
M:viewmodel V:视图 C:控制器
App_Data:一个比较特殊的文件夹,把文件放到这个文件夹,通过地址访问是访问不到的,ASP.NET会帮我们屏蔽掉。通常放一些数据库文件、xml配置文件以防止数据泄露
Content:一般放CSS样式、样式图片
Controllers:放控制器文件
Models:放ViewsModels
Scripts:放js、JQ
Views:放视图的文件夹
Global.asax:全局应用程序
RouteConfig:路由的配置
伪静态:
routes.MapRoute(
"Default2",
"{controller}-{action}.html",//记得在IIS添加映射 处理成映射--添加托管处理程序 *.html/System.Web.UI.PageHandlerFactory/name
new { controller = "Home", action = "Index"}
);
传值:通过viewData传值
控制器:

前台视图:

视图传给控制器
控制器:
1、控制器参数的名字和前台name的名字对应上,就会自动识别
2、控制器参数如果是对象,对象属性的和name对应上,也会自动识别

前台传递:

当一个控制器有两个同名方法的时候 在方法上一行加上标记用来区分[httpGet] [HttpPost]

Shared文件,所有的控制器都可以使用的文件夹,母版页就放在这文件内

传值有好几种方式 viewbag viewdata tempdate model
同ViewData和ViewBag一样,TempData也可以用来向视图传递数据。只是ViewData和ViewBag的生命周期和View相同,只对当前View有用。而TempData则可以在不同的Action中进行传值,类似webform里的Seesion。
TempData["abc"] = "this is tempdata";
<p>@TempData["abc"]</p>
跳转:
return RedirectToAction("action","controller")
return RedirectToAction("action","controller",RouteValue)
比如:
return RedirectToAction("Index","Home")
return RedirectToAction("Index","Home",new {参数1=xx,参数2=xxx})
(1)区分post get请求
在控制器上加标签[HttpPost] (只能接收psot请求) 或者 [get]
(2)html.beginform 自带的ajax表单 beiginajaxfrom
(3)母版页:
@RenderBody() :只能添加一个此方法,如果还想多挖几个坑,用下面的方法
@RenderSection("Name")、@RenderSection("Name",false) 第二个参数是指这个坑是否必填,默认true 必填
(4)DB.UserInfo. 点不出where
没有引用entity的dll 而且dal和model的版本dll一定要一直,版本不一致解决起来非常麻烦,建议删除重建NuGet 配置文件信息packages.config
(5)在MVC的controller中不能直接跳转,控制器必须有一个返回结果(进行基类验证的时候,正常控制器中可以)
filterContext.Result = Redirect("/Login/Index");//注意.
controller调用两次
不知道为什么 引用路径写错了 就会调用两次controller
导致报错,空值,找不到对象等
错误:
@Styles.Render("ueditorcss")
@Scripts.Render("~/bundles/ueditorjs")
正确:
@Styles.Render("~/bundles/ueditorcss")
@Scripts.Render("~/bundles/ueditorjs")
MVC区域 如果在区域中调用/跳转非区域的控制器
如果是在根目录下area就写空
如果是在区域下area就写对应的area名字
<a href="@Url.Action("Detail", "../Article", new { id = item.ID })" target="_blank">阅读全文</a>
<li><a href="@Url.Action("Index","Home", new {area="" })"><span>首页</span></a></li><li><a href="@Url.Action("Index", "Goods", new {area="areaname" })"><span>其他信息</span></a></li>
csrf
在cshtml页面的form标签里加上@Html.AntiForgeryToken()
在Controller需要防范CSRF的Action上加上[ValidateAntiForgeryToken]注解


  • 幻尘灬星
  • 声名远扬
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
总觉得很好,多多分享


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 1回复贴,共1页
<<返回广信it学院吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示