Angular + asp.net core 入门
一、简介
通俗的理解,Angular 只是一个前端框架,它只负责前端的事,但一个完整的项目还应该有后端,这其中之一可选的技术就是 asp.net core 。这里简单学习一下两个框架之间的协同开发。
对于现有的轮子,visual studio 已经可以直接创建带有 Angular 模板的 asp.net core 应用。详细教程可以直接翻微软的官方文档,很详细。
创建了带有 angular 模板的 asp.net core 应用之后,前后端的代码都可以在同一个项目下维护,更可以协同调试,以下是创建之后的工程目录。

工程目录
常规上讲,asp.net core 应用遵循 MVC 模式,在创建的模板中,Angular 项目代替了原来 Veiw 部分,也就是说带 angular 应用的 asp.net core 项目仍然还是遵循MVC模式。
根据我阅读文档所得的结论,在这个工程下面我们只需要写 Model 以及 controller 即可,model 好理解,不就是我们从数据库中拿数据之后称放容器的模具嘛。那 controller 是什么?官方文档中说它是处理业务逻辑的东西,那么问题来了,我们要如何调用呢?去哪里调用呢?
二、控制器的调用逻辑
这里需要事先声明,一个请求(Get),即是用户在浏览器输入地址按下回车的时候。
对于一个项目来说,它里面的控制器调用遵循一个路由逻辑。即
/[Controller]/[ActionName]/[Parameters]
举个例子,我这里有个控制器,代码如下
using Microsoft.AspNetCore.Mvc;
using System.Text.Encodings.Web;
namespace MvcMovie.Controllers
{
[ApiController]
[Route("[controller]")]
public class HelloWorldController : Controller
{
//
// GET: /HelloWorld/
// 路由走到http://localhost:4200/HelloWorld/ 就会默认调用它,也可能他是第一个缘故
[HttpGet]
public string Index()
{
return "This is my default action...";
}
//
// GET: /HelloWorld/Welcome/
[HttpGet]
public string Welcome()
{
return "This is the Welcome action method...";
}
}
}
譬如这里我们的网页运行在 [http://localhost:4200](http://localhost:4200) ,那么如果我这个时候在地址栏输入
http://localhost:4200/HelloWorld/Index
# or
http://localhost:4200/HelloWorld/Welcome
就能够调用这个控制器下的两个方法,这个调用逻辑遵循上面讲述的路由规则,即
/[Controller]/[ActionName]?[Parameters]
所以可以推断出,控制器实际上指的是后端对于页面上所有组件的各种应对逻辑。
三、项目当中的 MVC 结构
对于一个完整的 asp.net core 项目来说,是一个完整的 MVC 结构,项目内的 Angular 工程充当 Veiw ,而微软自带的程序集提供 Controller 和 Model 支持。当然也可以创建只含有后端的项目,这种项目一般称为 Web API 。其结构也遵循 MVC,只不过缺少了 Veiw 。
打包之后,Veiw 部分会被编译成静态文件存于生成路径,以供编译生成执行文件调用。
Angular + asp.net core 入门的更多相关文章
- CentOS开发ASP.NET Core入门教程
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9891346.html 因为之前一直没怎么玩过CentOS,大多数时间都是使用Win10进行开发,然后程序 ...
- ASP.NET Core 入门教程 10、ASP.NET Core 日志记录(NLog)入门
一.前言 1.本教程主要内容 ASP.NET Core + 内置日志组件记录控制台日志 ASP.NET Core + NLog 按天记录本地日志 ASP.NET Core + NLog 将日志按自定义 ...
- ASP.NET Core入门(一)
大家好,很荣幸您点了开此篇文章,和我一起来学习ASP.NET Core,此篇文字为<ASP.NET Core入门>系列中的第一篇,本系列将以一个博客系统为例,从第一行代码,到系统发布上线( ...
- 【翻译】ASP.NET Core 入门
ASP.NET Core 入门 原文地址:Introduction to ASP.NET Core 译文地址:asp.net core 简介 翻译:ganqiyin ...
- ASP.NET CORE 入门教程(附源码)
ASP.NET CORE 入门教程 第一课 基本概念 基本概念 Asp.Net Core Mvc是.NET Core平台下的一种Web应用开发框架 符合Web应用特点 .NET Core跨平台解决方案 ...
- Angular 5和ASP.NET Core入门
我希望你们都知道Angular 5已经发布了.在本文中,我们将看到如何使用Angular5TemplateCore开始使用Angular 5和ASP.NET Core. 使用Angular5Templ ...
- Asp.net Core 入门实战
Asp.Net Core 是开源,跨平台,模块化,快速而简单的Web框架. Asp.net Core官网的一个合集,方便一次性Clone 目录 快速入门 安装 一个最小的应用 项目模板 路由 静态文件 ...
- 转载: ASP.NET Core入门系列文章
今天在网上发现了ithome上的asp.net core 系列文章,对于新手入门还不错,这里转载一下,也方便查阅. [Day01] 從頭開始 [Day02] 程式生命週期 (Application L ...
- C# & ASP.NET Core 入门官方资料汇总
借助给公司实习生培训事宜,整理了一些微软官方的适合新同学入门的资料,这里分享一下: 工具: Visual Studio 2017 Community 版本下载地址:https://www.visual ...
随机推荐
- Lesson4——NumPy 数组属性
NumPy 教程目录 NumPy 数组的维数称为秩(rank),秩就是轴的数量,即数组的维度,一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axi ...
- CF 1394 简要题解
最近都会做一些 \(\rm Div1\) 套题中 \(3000\) 分以下的题目. A 直接枚举贪心即可. B 首先不难发现总共可能的 \(c\) 序列只有 \(k!\) 种,很明显要暴力枚举所有情况 ...
- jstack与jmap分析java堆栈信息
首先确定要查询的服务进程pid,可用ps -ef|grep 进程名称 jstack -l pid >> stack_info.txt,将此进程的堆栈信息导出到txt文件中 其中" ...
- File常用的方法
import java.io.File; import java.io.IOException; /* 创建: createNewFile() 在指定位置创建一个空文件,成功就返回true,如果已存在 ...
- 【struts2】中method={1}详解
我们在使用struts2的时候,有时候为了简化struts2的配置项而采用通配符的方式,如下代码: <action name="ajaxregister!*" class=& ...
- 01 MySQL数据库安装(Windows+Mac)
目录 MySQL数据库安装 Windows 1.主要版本简介 2.软件下载 3.文件目录简介 4.使用 4.1配置环境变量 4.2登录 制作MySQL服务端开机自启动 运行MySQL 4.3 密码修改 ...
- Python:pathlib模块
Blog:博客园 个人 关于panthlib模块 pathlib模块提供表示文件系统路径的类,其语义适用于不同的操作系统.路径类被分为提供纯计算操作而没有 I/O 的纯路径,以及从纯路径继承而来但提供 ...
- DBLink的使用(从A库使用SQL查询B库的数据)
DBLink的使用 情景:今天我需要从A数据库查询B数据库的数据,进行一些数据比对和联合查询的操作. 所以用到的DBLink,在此记录一下使用流程,希望能够帮助下一个小白,一步到位的解决问题. 一句话 ...
- 40多个丰富的QQ特效代码,非常实用哦!
Hi,我们好,我是GG!微信和QQ是现在干流的两款社交东西.有人说微信现已完全替代了QQ,现已没有人玩QQ了.可是小雨却不这么以为,毕竟微信和QQ的用户集体是不一样的,它们在功能上的定位也是不一样的. ...
- SpringCloud微服务实战——搭建企业级开发框架(三十八):搭建ELK日志采集与分析系统
一套好的日志分析系统可以详细记录系统的运行情况,方便我们定位分析系统性能瓶颈.查找定位系统问题.上一篇说明了日志的多种业务场景以及日志记录的实现方式,那么日志记录下来,相关人员就需要对日志数据进行 ...