win10 uwp 手把手教你使用 asp dotnet core 做 cs 程序

本文指导如何利用ASP.NET Core作为后台,结合UWP或WPF创建前端应用程序。详细介绍了从创建项目、设置控制器到UWP连接和数据交互的全过程,包括Visual Studio的安装、项目创建、引用、控制器设置、运行与调试等步骤。
摘要由CSDN通过智能技术生成

本文是一个非常简单的博客,让大家知道如何使用 asp dot net core 做后台,使用 UWP 或 WPF 等做前台。

本文因为没有什么业务,也不想做管理系统,所以看到起来是很简单。

VisualStudio

建议去官网下载最新的在线安装,然后安装,安装的时候需要选择通用平台开发、桌面开发、跨平台开发。如果你安装的不是中文版,请看下面图片找到差不多的位置,或者全部打勾。

在这里插入图片描述

在这里插入图片描述

点击安装,可以去睡觉,明天再看我的博客。因为 VisualStudio 的安装是很慢的,如果发现因为自己的网站无法访问,需要代理,可以发邮件给我,我发一个代理给你。

创建项目

现在一起创建三个项目,第一个项目是 UWP 项目,没有什么需要注意,点击创建空白UWP项目就可以。第二个是一个 dotnet standard 项目。第三个是 dotnet core 项目。

UWP

创建一个 UWP 程序是非常简单,点击C#,创建空白项目,随意给个名字,点击确定。注意尽量选择最高的平台,在项目开发是需要通过用户才知道需要选哪个平台。但是在开始学的时候,请尽量选择最新版本,这样可以减少因为版本问题让自己的时间花费在解决版本问题不兼容

在这里插入图片描述

如果完全没有开发过 UWP 程序,那么请看win10 uwp 如何开始写 uwp 程序 - CSDN博客

dotnet standard

创建一个 dotnet standard 可以让多个项目使用,在这里放一些类的定义。这个项目叫 Model ,名字不是随便叫的。

dotnet core

右击解决方案,选择新建项目,在弹出的窗口选择 dotnet core ,选择 asp.net core web 程序。

在这里插入图片描述

随意给这个项目一个名字,然后点击确定

在弹出的窗口选择 API ,注意不勾选 Docker 支持

在这里插入图片描述

现在就创建好了所有项目

引用项目

现在在创建好的 UWP 项目和 asp dotnet core 项目,右击引用,加上 Model 的引用

在这里插入图片描述

在 UWP 项目,引用的叫引用,在 asp dotnet core 项目,引用叫依赖项,只需要右击项目,点击添加就可以看到引用

在这里插入图片描述

现在使用新的 VisualStudio 打开相同的解决方案,这样才可以进行调试 asp dotnet core 的同时调试 UWP 项目

创建通用结构

现在打开 Model 项目,创建一个类,这个类是通用结构,在多个项目都需要使用。现在决定做这个项目是读取现有的小伙伴的网站和名字,添加新的名字和网站记录。

那么这里的类就需要包含小伙伴的名字和他的网站

    public class RoqawzemJajene
    {
   
        public int Id {
    get; set; }

        public string Name {
    get; set; }

        public string Url {
    get; set; }
    }

可以看到上面的代码多了一个属性 Id ,现在我还不告诉大家为什么需要添加 id ,请在看到本文之后,自己尝试删除 id 然后重新运行项目。

设置控制器

现在打开 asp dotnet core 项目,通过 RoqawzemJajene 添加控制器。控制器就是访问 URL 时可以返回结果的类。通过控制器才可以使用 URL 访问,当然使用其他的方法也是可以做到,但是没有这个方法好用。

右击 Controler 添加,点击添加控制器

在这里插入图片描述

选择EF的控制器,请看下面图片。使用这个控制器,就会自动下载 EF 而且帮你设置好很多类,最简单的方法是这样写。如果想知道具体的每个类意思就需要自己去看文档,推荐ASP.NET Core 中文文档目录

在这里插入图片描述

这时需要告诉 VisualStudio 使用哪个模型类,和上下文,实际上如果刚才的引用已经写好,而且有 RoqawzemJajene 那么这一步是十分简单的。如果没有按照上面的方法来,那么这一步可能就无法继续。本文下面的也就无法继续。如果实在不知道怎么弄,欢迎在评论告诉我。

在这里插入图片描述

点击下拉,可以找到 RoqawzemJajene 这个类

在这里插入图片描述

点击了之后会看到没有数据上下文,点击最后的加号就可以自动帮你弄好

在这里插入图片描述

现在可以看到和下图差不多的界面,点击添加就可以等着 VisualStudio 帮你添加一些项目了

在这里插入图片描述

现在 VisualStudio 会帮你创建两个类

    public class TopetowLallteContext : DbContext
    {
   
        public TopetowLallteContext (DbContextOptions<TopetowLallteContext> options)
            : base(options)
        {
   
        }

        public DbSet<Model.RoqawzemJajene> RoqawzemJajene {
    get; set; }
    }
    [Produces("application/json")]
    [Route("api/RoqawzemJajenes")]
    public class RoqawzemJajenesController : Controller
    {
   
        private readonly TopetowLallteContext _context;

        public RoqawzemJajenesController(TopetowLallteContext context)
        {
   
            _context = context;
        }

        // GET: api/RoqawzemJajenes
        [HttpGet]
        public IEnumerable<RoqawzemJajene> GetRoqawzemJajene()
        {
   
            return _context.RoqawzemJajene;
        }

        // GET: api/RoqawzemJajenes/5
        [HttpGet("{id}")]
        public async Task<IActionResult> GetRoqawzemJajene([FromRoute] int id)
        {
   
            if (!ModelState.IsValid)
            {
   
                return BadRequest(ModelState);
            }

            var roqawzemJajene = await _context.RoqawzemJajene.SingleOrDefaultAsync(m => m.Id == id);

            if (roqawzemJajene == null)
            {
   
                return NotFound();
            }

            return Ok(roqawzemJajene);
        }

        // PUT: api/RoqawzemJajenes/5
        [HttpPut("{id}")]
        public async Task<IActionResult> PutRoqawzemJajene([FromRoute] int id, [FromBody] RoqawzemJajene roqawzemJajene)
        {
   
            if (!ModelState.IsValid)
            {
   
                return BadRequest(ModelState);
            }

            if (id != roqawzemJajene.Id)
            {
   
                return BadRequest();
            }

            _context.Entry(roqawzemJajene).State = EntityState.Modified;

            try
            {
   
               
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值