• 一、背景

随着微软拥抱开源,推出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. 一张图理清 Python3 所有知识点

    如果你前几天一直有关注 GitHub Trending,那你应该会留意到「Python3 in one pic」这个开源项目. 很多人学习python,不知道从何学起.很多人学习python,掌握了基 ...

  2. 事件 - DOM编程

    何为 DOM 事件,HTML DOM 使JavaScript 有能力对 HTML 事件做出反应. 1. 事件流 一个 DOM 事件可以分为捕获过程.触发过程.冒泡过程. 下面一个<a>元素 ...

  3. 【av68676164(p51-p53)】虚拟内存管理(2)

    虚拟内存管理(2) 7.3.4 缺页终端 分级存储体系 cache+内存+辅存 页表扩充-带中断位的页表 页号 页框号 中断位I 辅存地址 访问位 修改位 1 1 0 0 0 1 中断位I-标志该页是 ...

  4. 最火热的极速开发框架Spring Boot

    Spring Boot是Spring家族中的一个全新的框架,它用来简化Spring应用程序的创建和开发过程,也可以说Spring Boot能简化我们之前采用Spring mvc + Spring + ...

  5. [leetcode/lintcode 题解] Google面试题:合法组合

    给一个单词s,和一个字符串集合str.这个单词每次去掉一个字母,直到剩下最后一个字母.求验证是否存在一种删除的顺序,这个顺序下所有的单词都在str中.例如单词是’abc’,字符串集合是{‘a’,’ab ...

  6. 日记——递归or搜索?

    好久没发博了,今天发一篇. 这两天学校功课比较紧,编程稍微放了放做题量. 抽空学了学深搜,感谢zah同学给我讲解dfs,浅显易懂,我很快就适应了. 做了几个基础题,没有想象中那么难(菜鸡BB,因为题简 ...

  7. troubleshoot之:GC调优到底是什么

    目录 简介 那些GC的默认值 GC的选择 GC的最大线程个数 初始化heap size 最大的heap size 分层编译技术 我们到底要什么 最大暂停时间 吞吐率 简介 我们经常会听到甚至需要自己动 ...

  8. Redis哨兵模式的配置

    绪论 现有三台设备,192.168.137.11.192.168.137.12和192.168.137.13,要求在三台设备上实现redis哨兵模式,其中192.168.137.11为master,其 ...

  9. kubectl 安装

    下载kubectl二进制文件curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.10.0/bin/linux/a ...

  10. 曹工改bug:cpu狂飙,old gc频繁,线程神秘死亡连环案件调查报告

    曹工改bug:cpu狂飙,old gc频繁,线程神秘死亡连环案件调查报告 前言 前两天,访问开发环境上一个java服务,发现一直转圈圈,因为我开着fiddler,可以看到的现象是,接口一直没返回:本来 ...