随着技术的进步,跨平台开发已经成为了标配,在此大背景下,asp.net core也应运而生。本文主要利用asp.net core开发一个学生管理系统为例,简述asp.net core开发的常见知识点,仅供学习分享使用,如有不足之处,还请指正。
开发学生管理系统,涉及知识点,如下所示:
开发工具:visual studio 2019
目标框架:.net 5.0
架构:mvc三层架构【model-view-controller】
文件–>新建–>项目–>asp.net core web应用(模型-视图-控制器),如下所示:
然后点击下一步,进入配置新项目页面,输入项目名称【sms=student management system】及保存位置,然后点击下一步,如下所示:
选择其他信息【目标框架选择.net 5.0】,然后点击创建,如下所示:
通过默认创建的项目,如下所示:
在controllers文件夹–>右键添加–>控制器,如下所示:
打开创建视图控制器窗口,选择mvc控制器-空,然后点击添加。 如下所示:
弹出添加新项窗口,选择mvc控制器-空,输入控制器名称,点击创建即可,如下所示:
控制器代码如下所示:
namespace sms.controllers{ public class logincontroller : controller { private datacontext datacontext; public logincontroller(datacontext context) { datacontext = context; } [httpget] public iactionresult index() { return view(); } [httppost] public iactionresult login(ur ur) { if (string.isnullorempty(ur.urname) || string.isnullorempty(ur.password)) { viewbag.msg = "用户名或密码为空"; return view("index", ur); } el { var item = datacontext.urs.firstordefault(i=>i.urname==ur.urname && i.password == ur.password); if (item != null) { httpcontext.ssion.tint32("urid",item.id); return redirect("/home"); } el { viewbag.msg = "用户名或密码验证错误"; return view("index", ur); } } } }}
在views文件夹下新增login文件夹,然后新增视图【index.cshtml】,如下所示:
然后选择空视图,如下所示:
输入视图名称【index.cshtml】,点击添加即可,如下所示:
登录页面,添加如下代码,如下所示:
<!doctype html><html><head> <title>学生管理系统</title> <link rel="stylesheet" href="/css/login.css" rel="external nofollow" > <!-- for-mobile-apps-and-meta-tags --> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta http-equiv="content-type" content="text/html; chart=utf-8" /> <!-- //for-mobile-apps-and-meta-tags --></head><body> <h1>学生管理系统</h1> <div class="container w3"> <form action="/login/login" method="post"> 如何点亮qq幻想图标 <div class="urname"> <span class="urname">urname:</span> <input type="text" id="urname" name="urname" class="name" placeholder="" required=""> <div class="clear"></div> </div> <div class="password-agileits"> <span class="urname">password:</span> 小小作文 <input type="password" id="password" name="password" class="password" placeholder="" required=""> <div class="clear"></div> </div> <div class="rem-for-agile"> <input type="checkbox" name="remember" class="remember">记住密码<br> </div> <div class="login-w3"> <input type="submit" class="login" value="登 录"> </div> <div class="clear"></div> &ldisturb是什么意思t;div style="color:red;font-size:13px;"> @viewbag.msg </div> </form> </div> <div class="footer-w3l"> <p> © 2021 学生管理系统. all rights rerved | design by 小六公子</p> </div></body></html>
在models文件夹下,右键添加类,如下所示:
输入模型名称【ur】,点击添加即可,如下所示:
用户模型ur,如下所示:
namespace sms.models{ public class ur { /// <summary> /// 用户唯一标识 /// </summary> public int id { get; t; } /// <summary> /// 登录账号 /// </summary> public string urname { get; t; } /// <summary> /// 密码 /// </summary> public string password { get; t; } /// <summary> /// 显示名称 /// </summary> public strih5n1禽流感ng nickname { get; t; } }}
数据库操作采用entityframecore框架,继承自dbcontext,如下所示:
namespace sms.models{ public class datacontext:dbcontext { public dbt<ur> urs { get; t; } public datacontext(dbcontextoptions options) : ba(options) { } }}
创建数据库和表并构造数据,如下所示:
连接数据库,需要在配置文件appttings.json中,添加数据库连接字符串,如下所示:
{ "logging": { "loglevel": { "default": "information", "microsoft": "warning", "microsoft.hosting.lifetime": "information" } }, "connectionstrings": { "default": "rver=localhost;databa=sms;trusted_connection=true;ur id=sa;password=abc123" }, "allowedhosts": "*"}
在startup.cs中,添加entittyframework的注入,如下所示:
namespace sms{ public class startup { public startup(iconfiguration configuration) { configuration = configuration; } public iconfiguration configuration { get; } // this method gets called by the runtime. u this method to add rvices to the container. public void configurervices(irvicecollection rvices) { rvices.addcontrollerswithviews(); //数据库entityframeworkcore注入 rvices.adddbcontext<datacontext>(options=>options.usqlrver(configuration.getconnectionstring("default"))); rvices.addhttpcontextaccessor(); rvices.addssion();//配置ssion访问服务 } // this method gets called by the runtime. u this method to configure the http request pipeline. public void configure(iapplicationbuilder app, iwebhostenvironment env) { if (env.isdevelopment()) { app.udeveloperexceptionpage(); } el { app.uexceptionhandler("/home/error"); // the default hsts value is 30 days. you may want to change this for production scenarios, e /d/file/titlepic/ref=aka&shorturl=aspnetcore-hsts app.uhsts(); } app.uhttpsredirection(); app.ustaticfiles(); app.urouting(); app.ussion();//开瓷器店需是注入ssion app.uauthorization(); app.uendpoints(endpoints => { endpoints.mapcontrollerroute( name: "default", pattern: "{controller=home}/{action=index}/{id?}"); }); } }}
经过以上步骤,登录功能已经做好,运行程序。然后数据账号密码,点击登录进行跳转,如下所示:
以上就是c#利用asp.net core开发学生管理系统详解的详细内容,更多关于c# asp.net core学生管理系统的资料请关注www.887551.com其它相关文章!
本文发布于:2023-04-04 10:08:49,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/9dcaccd366dd775334dffd5eaecd1d0d.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:C#利用ASP.NET Core开发学生管理系统详解.doc
本文 PDF 下载地址:C#利用ASP.NET Core开发学生管理系统详解.pdf
留言与评论(共有 0 条评论) |