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

有哪些网站可以做图片打赏凡科网免费建站

有哪些网站可以做图片打赏,凡科网免费建站,电商设计网站培训,深圳app搭建文章目录 项目地址一、数据库准备/日志安装1.1 创建实体层1. Entities2. Enums 存放枚举 1.2 创建数据库层1. 安装Persistance层需要的库2. 创建ResumeDbContext3. 添加数据库配置/注册DBContext4. 执行Add-Migration5. 修改字段类型6. Enum支持Json 1.3 安装Serilog1. Api层安…

文章目录

  • 项目地址
  • 一、数据库准备/日志安装
    • 1.1 创建实体层
      • 1. Entities
      • 2. Enums 存放枚举
    • 1.2 创建数据库层
      • 1. 安装Persistance层需要的库
      • 2. 创建ResumeDbContext
      • 3. 添加数据库配置/注册DBContext
      • 4. 执行Add-Migration
      • 5. 修改字段类型
      • 6. Enum支持Json
    • 1.3 安装Serilog
      • 1. Api层安装所需要的包
      • 2. 在appsetting里配置
      • 3. 注册Serilog在Program里
      • 4.EfCore开启日志
      • 5. 在Hanlder里使用
  • 二、Application层
    • 2.1 安装MediaR和AutoMapper
      • 1. 安装所需要的包和引用
      • 2. 添加ApplicationRegistration
      • 3. 在Program里注册


项目地址

  • 教程作者:
  • 教程地址:
https://www.CSDN.com/watch?v=AiwzQMupPsU
  • 代码仓库地址作者:
https://github.com/mohammad-taheri1/Youtube-Resume-Management-dotnet-react-ts
  • 代码仓库自己:
https://github.com/CXTV/Resume/tree/main/backend

一、数据库准备/日志安装

在这里插入图片描述

1.1 创建实体层

1. Entities

  1. BaseEntity.cs
namespace ResumeManagement.Domain.Entities
{public abstract class BaseEntity{public Guid ID { get; set; }   public DateTime CreatedAt { get; set; } = DateTime.Now;public DateTime UpdateAt { get; set; } = DateTime.Now;public bool isActive { get; set; } = true;  }
}
  1. Company.cs : 里面有Job的Collection
namespace ResumeManagement.Domain.Entities
{public class Company:BaseEntity{public string Name { get; set; }public CompanySize Size { get; set; }//relations 一对多public ICollection<Job> Jobs { get; set; }}
}
  1. Job.cs:每个职位有对应的公司id和名称,一个职位有多个候选人
namespace ResumeManagement.Domain.Entities
{public class Job: BaseEntity{public string Title { get; set; }public JobLevel Level { get; set; }//relations 多对一public Guid CompanyID { get; set; }public Company Company { get; set; }//relations 一对多一个职位可以有多个候选人public ICollection<Candidate> Candidates { get; set; }}
}
  1. Candidate.cs: 每个候选人,有投递的工作ID和工作名称
namespace ResumeManagement.Domain.Entities
{public class Candidate: BaseEntity{public string FirstName { get; set; }public string LastName { get; set; }public string Email { get; set; }public string Phone { get; set; }public string CoverLetter { get; set; }public string ResumeUrl { get; set; }//relations 多对一public Guid JobID { get; set; }public Job Job { get; set; }}
}

2. Enums 存放枚举

  1. 公司规模的枚举
namespace ResumeManagement.Domain.Enums
{public enum CompanySize{Small,Medium,Large}
}

2.工作等级的

1.2 创建数据库层

在这里插入图片描述

1. 安装Persistance层需要的库

在这里插入图片描述

2. 创建ResumeDbContext

  • 这里定义表的关系
    在这里插入图片描述

3. 添加数据库配置/注册DBContext

  1. API层数据库连接appsettings.json
{"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning"}},"ConnectionStrings": {"ResumeDBConnectionStrings": "Server=.;Database=ResumeDB;Trusted_Connection=True;MultipleActiveResultSets=true;TrustServerCertificate=True;"},"AllowedHosts": "*"
}
  1. 在Persistance层创建PersistanceRegistration.cs文件

using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;namespace ResumenManagement.Persistance
{public static class PersistanceRegistration{public static void  AddPersistanceRegistration(this IServiceCollection services, IConfiguration configuration){services.AddDbContext<ResumeDbContext>(options =>options.UseSqlServer(configuration.GetConnectionString("ResumeDBConnectionStrings")));}}
}
  1. 在Api层里注册

在这里插入图片描述

4. 执行Add-Migration

  • 注意:如果从新添加了文件夹,一定要build项目之后,重启项目,才会执行migration成功
    在这里插入图片描述
  • 执行成功后,在数据里,就可以看到我们的表

在这里插入图片描述

5. 修改字段类型

  • 在我们创建完成表之后,返现Size是int类型,Job里的Level也是int类型,这是因为枚举类型造成的原因,需要在DbContext里修改类型
  • 在这里插入图片描述

6. Enum支持Json

  • Program.cs里添加
builder.Services.AddControllers().AddJsonOptions(options =>
{options.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter());
});

1.3 安装Serilog

1. Api层安装所需要的包

在这里插入图片描述

2. 在appsetting里配置

  • 直接配置在setting之后,就不需要在中间件里配置
  "Serilog": {"MinimumLevel": {"Override": {"Microsoft": "Warning","Microsoft.EntityFrameworkCore": "Information"}},"WriteTo": [{"Name": "Console","Args": {"outputTemplate": "[{Timestamp:dd-MM HH:mm:ss} {Level:u3}] |{SourceContext}| {NewLine}{Message:lj}{NewLine}{Exception}"}},{"Name": "File","Args": {"path": "Logs/Resturant-API-.log","rollingInterval": "Day","rollOnFileSizeLimit": true,"formatter": "Serilog.Formatting.Compact.CompactJsonFormatter, Serilog.Formatting.Compact"}}]},"AllowedHosts": "*"

3. 注册Serilog在Program里

  • 注册服务以及中间件
    在这里插入图片描述

4.EfCore开启日志

  • 在Persistence层里,efCore服务注册的地方PersistanceRegistration.cs
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using ResumenManagement.Application.Contracts.Persistance;
using ResumenManagement.Persistance.Repositories;namespace ResumenManagement.Persistance
{public static class PersistanceRegistration{public static void  AddPersistanceRegistration(this IServiceCollection services, IConfiguration configuration){services.AddDbContext<ResumeDbContext>(options =>options.UseSqlServer(configuration.GetConnectionString("ResumeDBConnectionStrings")).EnableSensitiveDataLogging() // 启用敏感数据记录);services.AddScoped(typeof(IAsyncRepository<>), typeof(BaseRepository<>));services.AddScoped<ICompanyRepository, CompanyRepository>();}}
}

5. 在Hanlder里使用

  1. 需要先在Application层安装一个包才可以使用
    在这里插入图片描述
  2. 注册服务以及使用

在这里插入图片描述

二、Application层

2.1 安装MediaR和AutoMapper

1. 安装所需要的包和引用

在这里插入图片描述

2. 添加ApplicationRegistration

  • 在Application层添加ApplicationRegistration.cs
using Microsoft.Extensions.DependencyInjection;namespace ResumenManagement.Application
{public static class ApplicationRegistration{public static void AddApplicationRegistration(this IServiceCollection services){//1.获取应用程序程序集var applicationAssembly = typeof(ApplicationRegistration).Assembly;//2.注册所有MediatR处理程序services.AddMediatR(cfg => cfg.RegisterServicesFromAssembly(applicationAssembly));//3.注册所有AutoMapper配置services.AddAutoMapper(applicationAssembly);              }}
}

3. 在Program里注册

  • Program.cs里添加ApplicationRegistration

在这里插入图片描述

在这里插入图片描述

http://www.dtcms.com/wzjs/85202.html

相关文章:

  • 绵阳个人网站建设seo网页优化培训
  • 织梦儿童早教教育培训网站模板天津seo排名费用
  • 网站服务器租用价格怎么算百度搜索引擎平台
  • 可以做很多个网站然后哭推广百度seo刷排名软件
  • 如何用家庭电脑做网站中国万网域名注册服务内容
  • 哈市哪里网站做的好关于新品牌的营销策划
  • 电动车网站建设什么是seo文章
  • tcga做多因素分析的网站网站优化有哪些类型
  • 手机3g门户首页上海比较好的seo公司
  • 专业网站建设阿里云怎么让某个关键词排名上去
  • 建设网站的工作步骤网站seo 优化
  • wordpress需要哪些插件seo如何快速出排名
  • soho的外贸网站网站推广100种方法
  • 张北县网站建设seo兼职工资一般多少
  • 微信商店小程序怎么弄巩义网站推广优化
  • 怎么下别人wordpress模板seo哪个软件好
  • javaweb可以做网站吗网页制作公司排名
  • 免费推广的软件站长工具seo综合查询源码
  • 做网站 服务器网页设计作品
  • 安徽省工程建设信息网网站网站建设合同
  • 可以做旅行计划的网站百度收录查询入口
  • 网站开发工程师应聘书范文700字站长工具seo优化
  • 信游天下网站建设建站平台
  • 衡水做网站建设网站网络优化外包
  • 做原油期货关注什么网站百度快速排名软件下载
  • 新开传奇网站发布站app推广方案策划
  • 网站怎么连接网什么是百度竞价排名
  • 站长工具pr值查询广告大全
  • 如何查询网站收录情况dw网页制作教程
  • 关于企业官方网站建设的ppt淘宝代运营