Angular结合C#

embedded/2025/1/13 6:29:02/

在 Angular 2 及以上版本与 C#结合使用 REST API 的示例中,我们将分别展示前端 Angular 服务和后端 C# Web API 的实现。

一、前端:Angular 服务

  1. 生成 Angular 服务
    • 使用 Angular CLI 生成一个新的服务,例如user.service.ts
    ng generate service user
    
  2. 编写服务代码
    • user.service.ts中,我们将编写 HTTP 请求来与后端 API 进行交互:
    import { Injectable } from '@angular/core';
    import { HttpClient } from '@angular/common/http';
    import { Observable } from 'rxjs';@Injectable({providedIn: 'root'
    })
    export class UserService {private apiUrl = 'https://your-backend-api-url/api/users'; // 替换为你的后端 API URLconstructor(private http: HttpClient) { }// 获取用户列表getUsers(): Observable<any> {return this.http.get(this.apiUrl);}// 根据 ID 获取单个用户getUserById(id: number): Observable<any> {return this.http.get(`${this.apiUrl}/${id}`);}// 创建新用户createUser(user: any): Observable<any> {return this.http.post(this.apiUrl, user);}// 删除用户deleteUser(id: number): Observable<any> {return this.http.delete(`${this.apiUrl}/${id}`);}
    }
    

二、后端:C# Web API

  1. 创建 ASP.NET Core Web API 项目
    • 使用 Visual Studio 或.NET CLI 创建一个新的 ASP.NET Core Web API 项目。
  2. 添加控制器和模型
    • 创建一个名为UserController的控制器,并添加一个User模型类。
    • User.cs
    public class User
    {public int Id { get; set; }public string Name { get; set; }public string Email { get; set; }
    }
    
    • UserController.cs
    using Microsoft.AspNetCore.Mvc;
    using System.Collections.Generic;
    using System.Linq;namespace YourNamespace.Controllers
    {[Route("api/[controller]")][ApiController]public class UserController : ControllerBase{// 模拟的用户数据private static List<User> users = new List<User>{new User { Id = 1, Name = "John Doe", Email = "john@example.com" },new User { Id = 2, Name = "Jane Smith", Email = "jane@example.com" }};// 获取用户列表[HttpGet]public IActionResult GetUsers(){return Ok(users);}// 根据 ID 获取单个用户[HttpGet("{id}")]public IActionResult GetUserById(int id){var user = users.FirstOrDefault(u => u.Id == id);if (user == null){return NotFound();}return Ok(user);}// 创建新用户[HttpPost]public IActionResult CreateUser([FromBody] User user){// 在这里添加逻辑以保存到数据库user.Id = users.Max(u => u.Id) + 1;users.Add(user);return CreatedAtAction(nameof(GetUserById), new { id = user.Id }, user);}// 删除用户[HttpDelete("{id}")]public IActionResult DeleteUser(int id){var user = users.FirstOrDefault(u => u.Id == id);if (user == null){return NotFound();}users.Remove(user);return NoContent();}}
    }
    
  3. 配置 Startup.cs
    • 确保你的Startup.cs文件配置了必要的服务和中间件,特别是services.AddControllers();

三、测试

启动你的 ASP.NET Core Web API 项目,并确保它在运行。然后,在你的 Angular 项目中,使用之前创建的UserService来发送 HTTP 请求,并处理响应。

这只是一个基本的示例,展示了如何在 Angular 前端和 C#后端之间使用 REST API 进行通信。在实际项目中,你可能需要添加更多的错误处理、验证、安全性措施等。


http://www.ppmy.cn/embedded/152842.html

相关文章

filebeat、kafka

elk的架构 es数据库&#xff1a;非关系型数据库&#xff0c;json格式 logstash&#xff1a;收集日志 kibana&#xff1a;图形化的工具 ↓ 以上三种结合起来即为日志收集系统 filebeat 作用&#xff1a;filebeat是一款轻量级的日志收集工具&#xff0c;不依赖java环境&…

python实现自动登录12306抢票 -- selenium

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 python实现自动登录12306抢票 -- selenium 前言其实网上也出现了很多12306的代码&#xff0c;但是都不是最新的&#xff0c;我也是从网上找别人的帖子&#xff0c;看B站视频&…

Midjourney 应用:框架总结

Midjourney 应用&#xff1a;框架总结 官方的模板很简单&#xff0c;分成四个部分&#xff1a; 主体细节 & 背景风格、媒介、艺术家参数 我的总结 其实按照官方模板写&#xff0c;你已经能超过 90% 的初学者&#xff0c;但根据我的实验&#xff0c;我细化了他们的模板的…

【Qt】C++11 Lambda表达式

1. 举例 connect(ui->pushButton, &QPushButton::clicked, [](bool checked){//具体代码qDebug() << "Hello" << checked;}); 2. 详情 //完整形式 [ capture ] ( params ) opt -> ret { body; }; capture 是捕获列表params 是参数表opt 是函数…

架构学习——互联网常用架构模板

1 总体结构 如上涵盖了互联网技术公司的大部分技术点&#xff0c;不同的公司使用的具体技术和实现有差异&#xff0c;到哪不会跳出框架范畴 2 存储层技术 2.1 SQL SQL为我们说的关系数据&#xff0c;互联网行业非常也必须依赖关系数据 但Oracle又太贵&#xff0c;还需要专人维…

蓝桥杯python省赛备战day2--数组枚举--845数组中的最长山脉-枚举算法刷题学习笔记3--leetcode

写在前面的话&#xff1a; 大家好&#xff0c;我是一名正在努力学习数据结构和算法的新手。这篇文章是我在学习python的各类数据结构以及基础算法过程中的一些笔记和心得&#xff0c;希望能和同样在学习该方面知识的朋友们分享。由于我的知识有限&#xff0c;文章中可能存在错…

计算机网络之---ICMP协议与Ping命令

ICMP 协议 ICMP (Internet Control Message Protocol) 是一种网络层协议&#xff0c;主要用于在 IP 网络中传递控制消息。ICMP 主要用于网络设备之间的故障报告和诊断&#xff0c;帮助设备检测网络连接问题。它是 IP 协议的核心部分之一&#xff0c;用于发送错误消息和操作信息…

国内大带宽服务器的应用场景

随着企业数据量的大幅度增长和用户对网络速度和体验的要求日益增加&#xff0c;大带宽服务器成为了众多网络业务的主要选择&#xff0c;大带宽服务器不仅配备了稳定的网络连接&#xff0c;还可以处理大量的数据信息传输&#xff0c;本文就来介绍一下国内大带宽服务器的应用场景…