ASP.NET MVC解决方案的搭建(.NET Framework)——C#系列(一)

news2024/11/17 2:57:39

一、新建项目

1、控制器新建

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2、Service层新建

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、Business数据层新建

在这里插入图片描述

4、Commons公共层新建

在这里插入图片描述

5、Models实体层新建

在这里插入图片描述

二、调用接口

1、接口建立

Web API 2 控制器新建
在这里插入图片描述
在这里插入图片描述

2、调用

在这里插入图片描述
在这里插入图片描述

三、Swagger接口调试配置

1、添加NuGet包

在启动项中添加Swashbuckle NuGet包
在这里插入图片描述

2、访问

https://localhost:xxx/swagger
在这里插入图片描述

四、接口调用MySQL数据库查询

1、Business层

using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MindERP.Business
{
    public class TestBusiness
    {
        //添加用户 
        public erpa_user_tbl SelectUserById(int id)
        {
            string constr = "Server=xxx;UserId=xxx;Password=xxx;Database=xxx;pooling=false;CharSet=utf8;port=3306";
            MySqlConnection conn = new MySqlConnection(constr);
            try
            {
                conn.Open();

                string mySql = "select * from erpa_user_tbl where id = @id";
                MySqlCommand sqlcmd2 = new MySqlCommand(mySql, conn);

                MySqlParameter p1 = new MySqlParameter("@id", MySqlDbType.Int32);
                p1.Value = id;

                sqlcmd2.Parameters.Add(p1);

                erpa_user_tbl user = new erpa_user_tbl();

                MySqlDataReader sqlreader = sqlcmd2.ExecuteReader();
                while (sqlreader.Read())
                {
                    user.id = Convert.ToInt32(sqlreader["id"]);
                    user.user_name = sqlreader["user_name"].ToString();
                }
                return user;

            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: " + ex.Message);
            }
            finally
            {
                conn.Close();
                conn.Dispose();
            }

            return new erpa_user_tbl();
        }
        public class erpa_user_tbl
        {
            public int id { get; set; }
            public string user_name { get; set; }
        }
    }
}

2、Service层

using MindERP.Business;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static MindERP.Business.TestBusiness;

namespace MindERP.Service
{
    public class TestService
    {
        public TestBusiness testBusiness;
        public TestService()
        {
            testBusiness = new TestBusiness();
        }

        public erpa_user_tbl SelectUserById(int id)
        {
            return testBusiness.SelectUserById(id);
        }
    }
}

3、控制器入口

using MindERP.Service;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;

namespace MindERP.API.Controllers
{
    public class TestController : ApiController
    {
        public TestService testService;
        public TestController()
        {
            testService = new TestService();
        }

        [HttpGet]
        public IHttpActionResult Hello(int id)
        {
            var result = testService.SelectUserById(id);
            return Json(result);
        }
    }
}

4、接口调用

在这里插入图片描述


注:能力有限,还请谅解,争取早日能够写出有质量的文章!

我是皮蛋布丁,一位爱吃皮蛋的热爱运动的废铁程序猿。

在这里插入图片描述

感谢各位大佬光临寒舍~

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vivado2018.3安装及注册指南-安装包获取

一、vivado 介绍 vivado设计套件 是FPGA 厂商赛灵思(Xilinx)公司最新的为其产品定制的集成开发环境,支持Block Design、Verilog、VHDL等多种设计输入方式,内嵌综合器以及仿真器,可以完成从设计输入、综合适配、仿真到…

mysql存储过程的基础知识

本文来简单说下存储过程的基础知识 文章目录概述什么是存储过程存储过程的优缺点概述 mysql官网提供的储存过程:https://www.mysqlzh.com/doc/225/499.html 什么是存储过程 简单的说,存储过程是一条或者多条SQL语句的集合,可视为批文件&…

SAP采购中不基于收货的发票校验的价差计算过程实例

年前最后一天上班了,我还在帮财务分析一个价差问题。源于财务用户头天的一个请求,在不基于收货的发票校验中,计算倒不难,难的是梳理数量的逻辑关系。不过总算时间也没白花,记录下来。下次就不算了,能解释清…

理解使用并查集

目录 一.并查集原理 1.概念: 2.性质 3.形式 4. 合并方式 二.并查集实现 1.成员变量 2.构造函数 3.查找根 4.合并集合 5.判断是否在一个集合 6.查看集合数量 三.并查集总代码 前言:理解并查集是为了接下来学习图要用,而会使用并查…

Linux:系统性能监控工具-tsar安装和使用

在上家公司做性能压力测试时就用过tsar,但总结文档留在了内部,正好借着最近工作内容又用上了tsar,总结起来 目录前言tsar介绍总体架构安装tasrtsar配置介绍配置文件定时任务配置日志文件tsar使用tsar实际使用参考查看可用的监控模块列表查看C…

本松新材创业板IPO终止:业绩下滑,客户较集中,周永松为实控人

撰稿|汤汤 来源|贝多财经 近日,深圳证券交易所披露的信息显示,杭州本松新材料技术股份有限公司(下称“本松新材”)提交了撤回上市申请文件的申请,保荐人财通证券也撤回对该公司的保荐。因此,深交所终止了…

目标检测:YOLOV3技术详解

目标检测:YOLOV3技术详解前言主要改进DarkNet53新的分类器正负样本的匹配损失函数前言 YOLOV3是V2的升级版,也是原作者的绝笔,V3主要还是把当时一些有用的思想融入了进来,没有什么创新型的突破,具体细节我们下面介绍。…

【安卓逆向】Frida入门与常用备忘

【安卓逆向】Frida入门与常用备忘前置知识什么是hook?hook的作用常见的逆向工具Frida使用入门简介与资料参考备忘前置环境配置执行hook常用hook脚本/API前置知识 什么是hook? hook,译为“钩子”,是指将方法/函数勾住,…

2022-CSDN的一年

前言 马上要到兔年的春节,年前最后一个版本顺利上线,闲下来两天,可以对过往一年进行一下总结,说起来这是入职CSDN之后第一次自己将自己所思所想以以博客的形式发布在CSDN网站上,也是比较奇特的体验。语言表达能力不强&…

利用华为路由器配置单臂路由功能,实现多个vlan间通信

单臂路由,是通过一台路由器使不同VLAN之间互通的数据通过路由器进行三层转发。 如果在路由器上为每个 VLAN分配一个单独的路由器物理接口,那么随着VLAN数量的增口,必然需要更多的接口,而路由器能提供的接口数量有限,所…

Kubernetes 基本概念

Kubernetes 是什么 Kubernetes 是一个可移植、可扩展的开源平台。用于管理容器化的工作负载和服务,可促进声明式配 置和自动化。是谷歌保密了十几年的秘密武器Borg的开源版本,谷歌一直通过Borg系统管理着数量庞大 的应用程序集群。由于Kubernetes是基于…

元素排序 Comparable 和 Comparator 有什么区别?

1.字面含义不同 我们先从二者的字面含义来理解它,Comparable 翻译为中文是“比较”的意思,而 Comparator 是“比较器”的意思。Comparable 是以 -able 结尾的,表示它自身具备着某种能力,而 Comparator 是以 -or 结尾,…

7. R语言【相关性分析函数】:cov、cor、cor.test 和 【相关性检验函数】:cor.test、corr.test、pcor.test

b站课程视频链接: https://www.bilibili.com/video/BV19x411X7C6?p1 腾讯课堂(最新,但是要花钱,我花99😢😢元买了,感觉讲的没问题,就是知识点结构有点乱,有点废话)&…

二、TortoiseGit的安装

1、TortoiseGit的安装 1.1、TortoiseGit简介 (1)TortoiseGit是一个基于TortoiseSVN的Git的Windows Shell接口。它是开源的,可以免费使用。 (2)TortoiseGit是git的比较好用的一个图形化工具。 1.2、软件下载 (1)下载地址 Download – TortoiseGit – Windows S…

84. 双向循环神经网络

1. 未来很重要 取决于过去和未来的上下文,可以填很不一样的词目前为止RNN只看过去在填空的时候,我们也可以看未来城 2. 双向RNN 两个隐状态层,并行计算隐状态,但是隐状态传播方向相反。 公式如下: 3. 推理 双向RNN不…

day16集合

1.Collection集合 1.1数组和集合的区别【理解】 相同点 都是容器,可以存储多个数据 不同点 数组的长度是不可变的,集合的长度是可变的 数组可以存基本数据类型和引用数据类型 集合只能存引用数据类型,如果要存基本数据类型,需要存对应的包装类 1.2集合类体系结构【理解】…

web期末作业网页设计——APEX(网页源码)

大学生网页制作期末作业-HTMLCSSJavaScript(包含源码)-apex欢迎来到Apex英雄Apex-legends 充满各种机会的世界 边境远方 偏僻星球群 欢迎来到诸王峡谷 于2019年2月5日发行。玩家在游戏中将扮演外星战场上的星空战士。 《Apex英雄》是由《泰坦天降》制作组…

<栈>的概念结构实现【C语言版】

1.栈的概念及结构 栈存储数据的方式跟数组一样,都是将元素排成一行。只不过它还有以下 3 条约束。 ● 只能在末尾插入数据。 ● 只能读取末尾的数据。 ● 只能移除末尾的数据。 你可以将栈看成一叠碟子:你只能看到最顶端那只碟子的碟面&#xff0c…

微博图床挂了!

一直担心的事情还是发生了。作为hexo多年的使用者,微博图床一直是我的默认选项,hexotyporaiPic更是我这几年写文章的黄金组合。而图床中,新浪图床一直都是我的默认选项,速度快、稳定同时支持大图片批量上传更是让其成为了众多图床…

工具及方法 - 设计你的文件夹结构

电脑上资料总是很多,要如何管理,是每个人都需要处理的问题。 如果处理不好,时间一长,很多资料就可能不知所踪或者难以查找。 出现这种情况,让人头疼,还浪费了时间,降低了工作效率。 所以&…