当前位置: 首页 > news >正文

VS2022中.Net Api + Vue 从创建到发布到IIS

VS2022中.Net Api + Vue 从创建到发布到IIS

  • 前言
  • 一、先决条件
  • 二、创建项目
  • 三、运行项目
  • 四、增加API
  • 五、发布到IIS
  • 六、设置Vue的发布

前言

最近从VS2019 升级到了VS2022,终于可以使用官方的.Net + Vue 组合了,但是使用过程中还是有很多问题,这里记录一下.

一、先决条件

Visual Studio的安装内容,首选确保Visual Studio是2022版本及以上,安装部门选择ASP.NET和Web开发选项与 Node.js开发.
在这里插入图片描述

二、创建项目

准备好上面的内容后在创建的项目的地方搜索Vue and ASP.NET Core:

我这里命名为VueAndNetTest,后面配置直接默认即可
在这里插入图片描述

三、运行项目

创建好项目后可以看到解决方案里面有两个项目,一个是.Net的为服务端,Vue的为客户端,毕竟是个前后端分离的项目.
在这里插入图片描述

到这里就已经可以直接运行项目了,会有两个命令符窗口弹出来,一个是Vue的运行另一个是.Net Core的运行.
在这里插入图片描述
在这里插入图片描述
准备好后则会打开两个网页,注意都不要关闭否则要重新运行项目了.
在这里插入图片描述
还有一个Swagger的API管理界面,可以在这里测试API.
在这里插入图片描述

四、增加API

到这里已经可以正常开发了,这里再举个列子说明如何增加自定义的Controller与API.

  1. 右键Controllers文件夹,然后添加Controller,我这里添加一个HomeController.cs
    在这里插入图片描述
    新增的Controller是不会被检测到的,需要增加注解
using Microsoft.AspNetCore.Mvc;namespace VueAndNetTest.Server.Controllers
{[ApiController][Route("[controller]")]public class HomeController : Controller{public IActionResult Index(){return View();}}
}

五、发布到IIS

在上述设置之后就可以发布项目了,右击.Net项目,我这里是发布到文件夹然后手动发布到IIS中,首先右击项目,然后点击发布,选择文件夹,接下来默认就可以了.
在这里插入图片描述
这里也可以改成自己想保存的目录
在这里插入图片描述
点击保存,等发布后会出现这个界面,然后再点击发布按钮,下次发布直接点击发布就可以了
在这里插入图片描述
这是发布完后的文件夹内容
在这里插入图片描述

接下来是IIS的设置
先确认一点是使用单独的端口号还是使用默认的,如果使用默认的则需要一个名称用于访问,在这里我发布到默认端口.

  1. 首先在IIS添加一个应用程序VueAndNetTest
    在这里插入图片描述
  2. 别名就是应用程序名称VueAndNetTest,物理路径选择刚刚发布的路径
    在这里插入图片描述
  3. 点击确定后则发布成功可以成功访问网站了

接下来你会发现你的网站还是白色的,那么就对了
在这里插入图片描述
因为这里是使用默认的设置的网站名称为VueAndNetTest,所以需要设置一下

六、设置Vue的发布

首先找到文件vite.config.js,在defineConfig中添加内容

base: '/VueAndNetTest/',

这样设置后就可以正常访问了
在这里插入图片描述

相关文章:

VS2022中.Net Api + Vue 从创建到发布到IIS

VS2022中.Net Api Vue 从创建到发布到IIS 前言一、先决条件二、创建项目三、运行项目四、增加API五、发布到IIS六、设置Vue的发布 前言 最近从VS2019 升级到了VS2022,终于可以使用官方的.Net Vue 组合了,但是使用过程中还是有很多问题,这里记录一下. 一、先决条件 Visual …...

RFID技术在制造环节的应用与价值

在现代制造业中,信息化和智能化已经成为企业提升竞争力的重要手段。RFID技术因其非接触式、远距离和高效识别的特点,广泛应用于生产的多个环节。本文将详细解读生产过程中RFID的关键应用场景,并结合实际案例,展示其为制造业带来的…...

(前端基础)HTML(一)

前提 W3C:World Wide Web Consortium(万维网联盟) Web技术领域最权威和具有影响力的国际中立性技术标准机构 其中标准包括:机构化标准语言(HTML、XML) 表现标准语言(CSS) 行为标准&#xf…...

Linux文件管理:硬链接与软链接

文章目录 1. 硬链接的设计目的(1)节省存储空间(2)提高文件管理效率(3)数据持久性(4)文件系统的自然特性 2. 软链接的设计目的**(1)跨文件系统引用****&#x…...

pnpm, eslint, vue-router4, element-plus, pinia

利用 pnpm 创建 vue3 项目 pnpm 包管理器 - 创建项目 Eslint 配置代码风格(Eslint用于规范纠错,prettier用于美观) 在 设置 中配置保存时自动修复 提交前做代码检查 husky是一个 git hooks工具(git的钩子工具,可以在特定实际执行特…...

在软件产品从开发到上线过程中,不同阶段可能出现哪些问题,导致软件最终出现线上bug

在软件产品从开发到上线的全生命周期中,不同阶段都可能因流程漏洞、技术疏忽或人为因素导致线上问题。以下是各阶段常见问题及典型案例: 1. 需求分析与设计阶段 问题根源:业务逻辑不清晰或设计缺陷 典型问题: 需求文档模糊&#…...

Spring Boot中如何自定义Starter

文章目录 Spring Boot中如何自定义Starter概念和作用1. 概念介绍2. 作用和优势2.1 简化依赖管理2.2 提供开箱即用的自动配置2.3 标准化和模块化开发2.4 提高开发效率2.5 提供灵活的配置覆盖3. 应用场景创建核心依赖1. 确定核心依赖的作用2. 创建 starter-core 模块2.1 依赖管理…...

制作Ubuntu根文件

系列文章目录 Linux内核学习 Linux 知识(1) Linux 知识(2) WSL Ubuntu QEMU 虚拟机 Linux 调试视频 PCIe 与 USB 的补充知识 vscode 使用说明 树莓派 4B 指南 设备驱动畅想 Linux内核子系统 Linux 文件系统挂载 QEMU 通过网络实现…...

SpringBoot快速接入OpenAI大模型(JDK8)

使用AI4J快速接入OpenAI大模型 本博文给大家介绍一下如何使用AI4J快速接入OpenAI大模型,并且如何实现流式与非流式的输出,以及对函数调用的使用。 介绍 由于SpringAI需要使用JDK17和Spring Boot3,但是目前很多应用依旧使用的JDK8版本&…...

UniApp 中制作一个横向滚动工具栏

前言 最近在用 UniApp 开发项目时,需要一个横向滑动的工具栏。常见的工具栏一般都是竖着的,但横向滑动的工具栏不仅能展示更多内容,还能让界面看起来更加丰富。不过很多朋友可能会发现,如何让内容“横着”展示又不变形、能流畅滚…...

react中如何获取真实的dom

在 React 中,获取真实的 DOM 元素通常通过 ref 来实现。ref 是一个特殊的属性,用于引用组件或 DOM 元素的实例。你可以通过 ref 获取到组件的真实 DOM 元素或组件实例。 1. 函数组件中的 useRef 在函数组件中,获取 DOM 元素的引用需要使用 …...

5G与物联网的协同发展:打造智能城市的未来

引言 随着科技的不断进步,智能城市的概念已经不再是科幻小说中的幻想,它正在逐步走进我们的生活。而这背后的两大驱动力无疑是 5G和 物联网(IoT)。5G网络以其高速率、低延迟、大容量的优势,与物联网的强大连接能力相结…...

【Qt】实现定期清理程序日志

在现有Qt程序中实现可配置日志保存天数的代码示例,分为界面修改、配置存储和核心逻辑三部分: // 1. 在配置文件(如settings.h)中添加保存天数的配置项 class Settings { public:int logRetentionDays() const {return m_settings…...

git bisect 使用二分法查找引入错误的提交

git bisect 使用二分法查找引入错误的提交 Git bisect 命令官方文档 git bisect 这个命令使用二分搜索算法来查找项目历史中哪个提交引入了一个错误 使用该命令时,首先告诉它一个已知包含错误的 “坏” 提交 以及一个已知在错误出现之前的 “好” 提交 然后 git b…...

一种面向车载时间敏感网络的联合路由与时隙调度负载均衡算法

论文标题 中文标题:一种面向车载时间敏感网络的联合路由与时隙调度负载均衡算法 英文标题:A Joint Routing and Time-Slot Scheduling Load Balancing Algorithm for In-Vehicle TSN 作者信息 Bo Xu, Xinrui Chang, Dongyang Xu, Shuo Wang, Uzair As…...

【弹性计算】容器、裸金属

容器、裸金属 1.容器和云原生1.1 容器服务1.2 弹性容器实例1.3 函数计算 2.裸金属2.1 弹性裸金属服务器2.2 超级计算集群 1.容器和云原生 容器技术 起源于虚拟化技术,Docker 和虚拟机和谐共存,用户也找到了适合两者的应用场景,二者对比如下图…...

Golang关于结构体组合赋值的问题

现在有一个结构体,其中一个属性组合了另外一个结构体,如下所示: type User struct {Id int64Name stringAge int64UserInfo }type UserInfo struct {Phone stringAddress string }如果要给 User 结构体的 Phone 和 Address 赋值的话&am…...

DeepSeek vs ChatGPT:AI对决中的赢家是……人类吗?

DeepSeek vs ChatGPT:AI对决中的赢家是……人类吗? 文章目录 DeepSeek vs ChatGPT:AI对决中的赢家是……人类吗?一、引言1. 背景2. 问题 二、DeepSeek vs ChatGPT:谁更胜一筹?2.1 语言生成能力评测对比场景…...

新建github操作

1.在github.com的主页根据提示新建一个depository。 2.配置用户名和邮箱 git config --global user.name "name" git config --global user.email "email" 3.生成ssh秘钥 ssh-keygen -t rsa 找到public key 对应的文件路径 cat /root/.ssh/id_rsa 复制显…...

Spring Boot 携手 DeepSeek:开启智能交互新时代

前言 在当今数字化浪潮汹涌澎湃的时代,人工智能技术正以前所未有的速度改变着我们的生活和工作方式。大语言模型作为人工智能领域的一颗璀璨明星,凭借其强大的自然语言处理能力,为各个行业带来了新的发展机遇。DeepSeek 作为一款性能卓越的大语言模型,以其高效、准确的文本…...

OneNet物联网平台文件管理实战:从图片上传到文件操作(Postman全流程指南)

OneNet物联网平台文件管理全流程实战:从图片上传到生命周期管理 在物联网应用开发中,文件管理往往是最容易被忽视却至关重要的环节。想象一下,你的智能摄像头需要将抓拍的图像上传到云端,或者环境监测设备要定期上报日志文件——…...

ClawEnvKit:自动化评估大语言模型智能体工具调用能力的开源工具包

1. 项目概述:ClawEnvKit,一个为“爪型”智能体量身打造的环境生成与评估工具包如果你正在研究或开发基于大语言模型的智能体(Agent),尤其是像OpenClaw、NanoClaw这类“爪型”架构的智能体,那么你肯定遇到过…...

当敏捷遇到CMMI合规压力:AISMM模型给出第三条路(金融/医疗行业已强制要求2025Q1前完成对标)

更多请点击: https://intelliparadigm.com 第一章:当敏捷遇到CMMI合规压力:AISMM模型给出第三条路 在传统软件工程实践中,敏捷方法强调快速迭代与响应变化,而CMMI则聚焦于过程稳定性、可重复性与组织级成熟度。二者目…...

DockerDesktop一直处于stating状态的解决办法

场景介绍: 项目场景:DockerDesktop一直处于stating状态,卸载重装也是stating;问题 dockerdesktop一直处于加载状态,即使设置也会出现超时或者是直接处于卡死的现象 例如:原因分析: 出现这个问题…...

MyBatis 高频八股文:从 Mapper 到缓存,一篇搞懂常见面试题

前言MyBatis 是 Java 后端开发中非常常用的持久层框架,主要负责 Java 程序和数据库之间的数据交互。在 Spring Boot 项目中,我们经常会用 MyBatis 或 MyBatis-Plus 来操作 MySQL。面试中,MyBatis 常见问题包括:MyBatis 是什么&…...

从零到量产:一个嵌入式工程师的i.MX8MM实战笔记(Uboot、Yocto、Android 11全流程)

从零到量产:一个嵌入式工程师的i.MX8MM实战笔记(Uboot、Yocto、Android 11全流程) 第一次拿到i.MX8MM开发板时,我盯着那块巴掌大的电路板发了十分钟呆——作为团队里唯一有过嵌入式Linux经验的工程师,这次量产项目的重…...

FPGA与EtherSound在专业音频设备中的低延迟实现

1. FPGA与EtherSound技术概述在专业音频设备开发领域,实时性和信号保真度是两大核心诉求。传统基于通用处理器的架构往往难以同时满足这两点要求,而FPGA(现场可编程门阵列)因其独特的硬件可编程特性和并行计算能力,正逐…...

TabTune:统一表格模型微调与推理的开源框架

1. 项目概述TabTune是一个专门针对表格数据(Tabular Data)设计的开源工具库,旨在为各类表格基础模型(Table Foundation Models)提供统一的微调(Fine-tuning)和推理(Inference&#x…...

gh_mirrors/docume/documentation架构方法论:从零开始构建可扩展前端项目

gh_mirrors/docume/documentation架构方法论:从零开始构建可扩展前端项目 【免费下载链接】documentation Architectural methodology for frontend projects 项目地址: https://gitcode.com/gh_mirrors/docume/documentation gh_mirrors/docume/documentati…...

Python配置管理新范式:基于装饰器的Tanuki库实践指南

1. 项目概述:一个轻量级、高可配的Python配置管理库 在Python项目开发中,配置管理是个看似简单、实则暗藏玄机的环节。从最简单的 config.py 里写几个变量,到使用环境变量、YAML/JSON文件,再到引入复杂的配置中心,每…...