c# code frist 生成数据库迁移

it2023-06-22  78

1.程序包管理控制器 执行命令Add-Migration   输入Name (类似于次此迁移的备注信息)

2.PM> Update-Database 

 

 

 

C# 使用Code First迁移更新数据库

三步完成迁移:

1. 启用迁移: Enable-Migrations

    Enable-Migrations -ContextTypeName Mvc4WebSite.Models.MvcGuestbookContext

    迁移 Mvc4WebSite项目下的MvcGuestbookContext。迁移成功提示:已为项目 Mvc4WebSite 启用 Code First 迁移。

2. 添加迁移: Add-Migration

    Add-Migration InitialCreate

3. 将迁移更新到数据库:Update-Database

    Update-Database -Verbose

这样,就完成了更新数据库。

 

 

 

# EF Code First 生成数据库命令 ### 步骤: 1. 生成migration >  Add-Migration 2. 生成数据库 >  Update-Database 3. 生成SQL >  Script-Migrations

常用HTTP状态码 200  请求成功

302  重定向 304  使用本地缓存

400  客户端请求的语法错误,服务器无法理解 401  请求要求用户的身份认证 404  服务器无法根据客户端的请求找到资源(网页) 403  无该页面的权限,被禁止使用

500  服务器内部错误,无法完成请求

## CentOS7 部署说明

1. vs 发布为: Linux_x64 + 独立部署 2. 拷贝到CentOS7的 /opt/input/api 目录下 3. 添加执行权限: chmod +x /opt/input/api/Qhbx.Tracebility.Input.Api 4. Systemd运行   ``` vi /etc/systemd/system/input_api.service 

内容如下:

[Unit] Description=投入品API After=syslog.target After=network.target

[Service] WorkingDirectory=/opt/input/api ExecStart=/opt/input/api/Qhbx.Tracebility.Input.Api --urls=http://0.0.0.0:7002 Restart=always RestartSec=10 SyslogIdentifier=input_api User=root Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]  WantedBy=multi-user.target

启用服务: systemctl enable input_api 启动服务: systemctl start input_api 配置防火墙: firewall-cmd --zone=public --add-port=7002/tcp --permanent 重新加载防火墙配置: firewall-cmd --reload

```

### 异常

1. icu

netcore运行依赖库icu, 否则会出现如下错误: > Couldn't find a valid ICU package installed on the system 解决办法 ``` # yum install icu ```

2. libgdiplus System.Drawing.*在Linux中依赖库libgdiplus。否则会出现如下错误: > System.DllNotFoundException: Unable to load shared library 'libgdiplus' or one of its dependencies.

解决办法: ``` # wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo # yum install libgdiplus ```

最新回复(0)