C# 基础知识扩充5 传统三层和MVC架构讲解,Ajax使用, 防止Sql注入 ,实现页面跳转, MVC创建

本文介绍使用Visual Studio 2019创建MVC项目的详细步骤,包括项目结构解析、页面跳转实现、控制器及视图交互、JSON数据处理等关键技术点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一:用VS2019创建MVC项目的步骤

在这里插入图片描述
选中后下一步!
在这里插入图片描述
选中MVC然后创建,就完成了创建!

二:控制器和视图分别是哪个文件夹

在这里插入图片描述

三:页面跳转的地址格式是?

…/控制台名/对应的方法名

四:控制器的方法返回一个视图?

return View();

五:控制器的方法返回一个Json对象

第一步:将控制器中要返回Json对象的方法的类型从ActionResult更改为JsonResult

第二步:方法参数改为对象

第三步:将return View()修改为return Json()

注:return Json()需要传入一个参

六:什么是传统三层架构?

数据访问层 (DAL),业务逻辑层(BLL) ,表示层(UI)

七:项目一般有哪几个项目

类库Core 用来存放公共的帮助类
类库DAL 数据访问层
类库BLL 业务逻辑层
类库Model 用于存放实体类
还有一个UI层 表示层

八:每个项目的引用是怎么样的

Model:无需引用

Core:无需引用

DAL:引用Model

BLL:引用Model,DAL

Web:引用Model,BLL

九:MVC架构和传统三层区别在哪

MVC将表现层分为(控制器视图

十: 视图页面接收Json处理步骤有哪些?

success: function (data) {
	 if (data.Success) {
		 alert("注册成功");                                
		 window.location.href = "../Login/Login";
	 } else {
		alert("注册失败");                            
		window.location.href = "../Login/Register";
	 }
}

十一:sql语句怎么参数化处理?(可用来防止SQL注入!)

DBHelp类: Command.Parameters.AddRange(sqlParameters);

public int AddUser(UserInfo user) {
            string sql = $"insert into UserInfo (UserName,Password,Phone,Birthday) values(@UserName,@Password,@Phone,@Birthday);";
            SqlParameter[] sqlParameter = {
                new SqlParameter(){
                    DbType=System.Data.DbType.String,
                    ParameterName="@UserName",
                    Value=user.UserName
                },
                new SqlParameter(){
                    DbType=System.Data.DbType.String,
                    ParameterName="@Password",
                    Value=user.Password
                },
                new SqlParameter(){
                    DbType=System.Data.DbType.String,
                    ParameterName="@Phone",
                    Value=user.Phone
                },
                new SqlParameter(){
                    DbType=System.Data.DbType.String,
                    ParameterName="@Birthday",
                    Value=user.Birthday
                }
            };
            return DBHelper.ExecuteNonQuery(sql,sqlParameter);

十三:Ajax提交到后台js怎么写?

var data = {};
 $("#sub").click(function () {                         
                    data.UserName = $("#username").val();            
                    data.Password = $("#password").val();              
                    data.Phone = $("#tel").val();
                    $.ajax({
                        type: "post",
                        url: "../Login/RegisterUser",
                        data: data ,
                        success: function (data) {
                            if (data.Success) {
                                alert("注册成功");                                
                                window.location.href = "../Login/Login";
                            } else {
                                alert("注册失败");                            
                                window.location.href = "../Login/Register";
                            }
                        }
                    })
                })

十四:页面跳转js怎么写?

window.location.href = "../控制器名/控制器里的视图方法名";
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值