• 一、背景

随着微软拥抱开源,推出Net Core框架,目前已经支持跨平台,能部署到Linux、MacOS、Windows等系统上。

下面我们就来分享一下Visual Studio编译好的代码部署到Linux上。

  • 二 、简单例子

1.  新建一个API程序

2. 新建一个数据传输实体类

    [Serializable]
public class TData
{
/// <summary>
/// 操作结果:Tag返回为1表示成功,0为失败
/// </summary>
public int Tag { get; set; }
/// <summary>
/// 返回消息
/// </summary>
public string Message { get; set; } } [Serializable]
public class TData<T> : TData
{
/// <summary>
/// 返回的结果
/// </summary>
public T Result { get; set; }
}

3. 新建一个User实体类

    [Serializable]
public class User
{
public string Id { get; set; }
public string Name { get; set; }
public string LoginCode { get; set; }
public string LoginPwd { get; set; }
public string Gender { get; set; }
public string Address { get; set; }
}

4.  新建一个UserController控制器,新建两个API GetUserById和PostSaveUserInfo

    [Route("api/[controller]/[action]")]
[ApiController]
public class UserController : ControllerBase
{ /// <summary>
/// 测试服务器连接
/// </summary>
/// <returns></returns>
[HttpGet]
public string Get()
{
return "";
} /// <summary>
/// 根据User.Id获取用户信息
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
//[Route("GetUserById")]
[HttpGet]
public TData<User> GetUserById(string userId)
{
TData<User> tData = new TData<User>();
if (!string.IsNullOrEmpty(userId) && string.Compare(userId, "") == )
{
tData.Tag = ;
tData.Result = new User()
{
Id = userId,
Name = "sam",
LoginCode = "",
LoginPwd = "",
Gender = "男",
Address = "桂城"
};
}
else
{
tData.Message = "没有找到用户信息";
}
return tData;
} /// <summary>
/// 保存用户信息
/// </summary>
/// <param name="user"></param>
/// <returns></returns>
//[Route("PostSaveUserInfo")]
[HttpPost]
public TData PostSaveUserInfo(User user)
{
TData tData = new TData();
if (user != null)
{
tData.Tag = ;
tData.Message = "保存成功!";
}
else
{
tData.Message = "保存失败!";
}
return tData;
}
}

5.  运行起来,使用PostMan调用一遍,保证服务是正常的,返回1表示调用成功

6.  发布项目,选择Linux 64运行环境

7. 使用FileZilla上传已经编译发布的文件

8. 使用dotnet命令启动这个程序

9.  测试API连接,返回1是正常的

10. 调用我们创建的API

  • 三、总结

一个简单的例子分享,在Liunx学习之旅,分享与记录。

Visual Studio编译Core程序部署到linux的更多相关文章

  1. Asp.Net Core 程序部署到Linux(centos)生产环境(二):docker部署

    运行环境 照例,先亮环境:软件的话我这里假设你已经批准好了.net core 运行环境,未配置可以看我的这篇[linux(centos)搭建.net core 运行环境] 腾讯云 centos:7.2 ...

  2. Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署

    运行环境 照例,先亮底 centos:7.2 cpu:1核 2G内存 1M带宽 辅助工具:xshell xftp 搭建.net core运行环境 .net core 的运行环境我单独写了一篇,请看我的 ...

  3. ASP.NET Core教程:ASP.NET Core程序部署到Linux

    一.前言 这篇文章我们将讲解如何将ASP.NET Core 程序部署到Linux.这里我们使用的是虚拟机里面安装的Centos7.这里的ASP.NET Core程序,以上篇文章中发布的框架依赖文件为例 ...

  4. Visual Studio 编译Winform程序不生成.vshost.exe和.pdb文件的方法

    问题:使用Visual Studio编译工程时,默认设置下,即使选择了「Release」时也会生成扩展名为「.vshost.exe」和「.pdb」的文件. 先解释一下各个文件的作用: .pdb文件: ...

  5. 在Windows平台用visual studio编译的可执行文件部署时报:应用程序无法正常启动0xc000007b(跟DirectX9无关的原因)

    最近在做EasyDarwin开源流媒体服务器Windows版本编译与部署时发现一个问题,在开发机本机运行都很正常,但是部署到目标机器(未安装vs等开发环境)时,莫名其妙报出了"应用程序无法正 ...

  6. Windows下docker的安装,将ASP.NET Core程序部署在Linux和Docker中

    参考文章: https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html docker for windows下载连接: htt ...

  7. 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台

    使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NET Core.都只是在windows下运行. .NET Core真正的核心是跨平 ...

  8. ASP.NET Core教程:ASP.NET Core 程序部署到Windows系统

    一.创建项目 本篇文章介绍如何将一个ASP.NET Core Web程序部署到Windows系统上.这里以ASP.NET Core WebApi为例进行讲解.首先创建一个ASP.NET Core We ...

  9. .NET Core跨平台:.NET Core项目部署到linux(Centos7)

    1.开篇说明 a 上篇博客简单的说明了一下 使用.NET Core开发的一个总结,地址是:(http://www.cnblogs.com/hanyinglong/p/6442148.html),那么这 ...

随机推荐

  1. python2.2 elif多条件判断

    #案例:存款大于100万,买宝马:大于50万买丰田:大于20万买二手车:小于20万自行车! cunkuan=60#elif多条件判断,else:不满足elif执行其他命令if cunkuan>1 ...

  2. 004_自己尝试go语言中的方法

    go语言可以给任意类型定义方法,我在学习过程中,一开始一头雾水,但是随着理解的深入,现在也大概知道了什么叫做方法 之前的一些例子其实讲的并不是特别生动,下面我用一个生动的例子演示一下 首先提出需求.我 ...

  3. Redis服务之Redis5集群相关命令说明

    上一篇博客主要聊了下redis.trib.rb这个工具来管理redis3/4 cluster 中的节点,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13456 ...

  4. java进阶(6)--访问控制权限

    一.四种访问控制权限   二.举例同包下访问权限

  5. JavaScript 实用方法

    1.按时间显示问候语 2.强制光标停留位置 3.保存页面文本 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN& ...

  6. C#LeetCode刷题之#203-删除链表中的节点(Remove Linked List Elements)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3826 访问. 删除链表中等于给定值 val 的所有节点. 输入: ...

  7. Flutter 打包程序 build android apk

    Step-1 Java 路径 找到java路径, 可使用[flutter doctor -v] Step-2: 进入目录 找到路径后 C:\Program Files\Java\jre1.8.0_23 ...

  8. 关于vector的erase删除操作的两种不同方法,在linux与visual studio的实现讨论

    关于vector的erase删除操作的两种不同方法,在linux与visual studio的实现讨论 1.前言: 最近在做某一个题时,用到了vector的删除操作,利用的是erase()函数删除符合 ...

  9. Docker 的前世今生

    虚拟化 「要解释清楚 Docker,首先要解释清楚容器(Container)的概念」.要解释容器的话,就需要从操作系统说起.操作系统太底层,细说的话一两本书都说不清楚.这里就一句话来总结一下:操作系统 ...

  10. 【转】Ubuntu下解决Depends: xxx(< 1.2.1) but xxx is to be installed

    在ubuntu下由于更新package不成功,或者误删除了一些文件会出现Depends: xxx(< 1.2.1) but xxx is to be installed解决方法是先试着安装所缺的 ...