第二十九节: Asp.Net Core零散获取总结(不断补充)
1. IWebHostEnvironment获取常用属性
(1).获取项目的根目录
_env.ContentRootPath 等价于 Directory.GetCurrentDirectory()
(2).获取项目下wwwroot目录
_env.WebRootPath
(3).获取项目最终dll的目录(拼接)
_env.ContentRootPath + @"\bin\Debug\netcoreapp3.1\"
(4).获取项目名称
_env.ApplicationName
(5).获取运行环境
_env.EnvironmentName
代码分享:
private IWebHostEnvironment _env; public FirstController(IWebHostEnvironment env)
{
this._env = env;
} public IActionResult Index()
{
//1. 获取各种地址
{
//项目的绝对目录
var d1 = _env.ContentRootPath;
var d2 = Directory.GetCurrentDirectory();
//项目的WebRoot目录
var d3 = _env.WebRootPath;
//最终dll文件的目录,拼接
var d4 = _env.ContentRootPath + @"\bin\Debug\netcoreapp3.1\";
//项目名称
var d5 = _env.ApplicationName;
//项目运行环境
var d6 = _env.EnvironmentName; ViewBag.d1 = d1;
ViewBag.d2 = d2;
ViewBag.d3 = d3;
ViewBag.d4 = d4;
ViewBag.d5 = d5;
ViewBag.d6 = d6;
}
return View();
}
运行效果:
2. 获取内外网ip地址和端口
(1).获取请求的外网ip和端口:this.HttpContext.Connection.RemoteIpAddress; 和 this.HttpContext.Connection.RemotePort;
(2).获取本地内网ip和端口: this.HttpContext.Connection.LocalIpAddress; 和 this.HttpContext.Connection.LocalPort;
代码分享:
var p1 = this.HttpContext.Request.Method;
//外网ip,必须部署在外网服务器上. Server-client如果在一个内网中,获取的还是内网地址
var p2 = this.HttpContext.Connection.RemoteIpAddress;
var p3 = this.HttpContext.Connection.RemotePort; //获取本地ip地址和端口,即项目部署在哪,获取的就是哪的。
var p4 = this.HttpContext.Connection.LocalIpAddress;
var p5 = this.HttpContext.Connection.LocalPort;
第二十九节: Asp.Net Core零散获取总结(不断补充)的更多相关文章
- centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数据库读写分离 双主搭建 mysql.history 第二十九节课
centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数 ...
- 大白话5分钟带你走进人工智能-第二十九节集成学习之随机森林随机方式 ,out of bag data及代码(2)
大白话5分钟带你走进人工智能-第二十九节集成学习之随机森林随机方式 ,out of bag data及代码(2) 上一节中我们讲解了随机森林的基本概念,本节的话我们讲解随机森 ...
- 风炫安全web安全学习第二十九节课 CSRF防御措施
风炫安全web安全学习第二十九节课 CSRF防御措施 CSRF防御措施 增加token验证 对关键操作增加token验证,token值必须随机,每次都不一样 关于安全的会话管理(SESSION) 不要 ...
- php第二十九节课
文件 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.o ...
- Scala入门到精通——第二十九节 Scala数据库编程
本节主要内容 Scala Mavenproject的创建 Scala JDBC方式訪问MySQL Slick简单介绍 Slick数据库编程实战 SQL与Slick相互转换 本课程在多数内容是在官方教程 ...
- [ExtJS5学习笔记]第二十九节 sencha ext js 5.1.0中动态更换皮肤主题
本文地址:http://blog.csdn.net/sushengmiyan/article/details/42016107 本文作者:sushengmiyan ------------------ ...
- 第二十九节,目标检测算法之R-CNN算法详解
Girshick, Ross, et al. “Rich feature hierarchies for accurate object detection and semantic segmenta ...
- 第二十九节:Java基础知识-类,多态,Object,数组和字符串
前言 Java基础知识-类,多态,Object,数组和字符串,回顾,继承,类的多态性,多态,向上转型和向下转型,Object,数组,多维数组,字符串,字符串比较. 回顾 类的定义格式: [类的修饰符] ...
- 第二百四十九节,Bootstrap附加导航插件
第二百四十九节,Bootstrap附加导航插件 学习要点: 1.附加导航插件 本节课我们主要学习一下 Bootstrap 中的附加导航插件 一.附加导航 注意:此插件要使用 bootstrap3.0. ...
随机推荐
- 计算机网络 - TCP_NODELAY 和 TCP_CORK, TCP_NOPUSH
参考 https://www.cnblogs.com/biyeymyhjob/p/4670502.html https://stackoverflow.com/questions/3761276/wh ...
- centos 7 添加swap
[root@lab01 /]# cd / [root@lab01 /]# + records in + records out bytes ( MB/s [root@lab01 /]# free -m ...
- ElementUI+Vue在使用el-dialog时,如何做到在弹出dialog时,外部呈锁定状态,而不是点击外部导致dialog直接关闭。
ElementUI+Vue在使用el-dialog时,如何做到在弹出dialog时,外部呈锁定状态,而不是点击外部导致dialog直接关闭. 问题描述 今天,在做Element+Vue项目时发现:Di ...
- 算法刷题--回溯算法与N皇后
所谓回溯算法,在笔者看来就是一种直接地思想----假设需要很多步操作才能求得最终的解,每一步操作又有很多种选择,那么我们就直接选择其中一种并依次深入下去.直到求得最终的结果,或是遇到明细的错误,回溯到 ...
- iso15693芯片读写工具套件 icode-slix2读写 nfc type 5 tag读写
iso15693芯片读写工具套件 icode-slix2读写 nfc type 5 tag读写校验套件 iso15693工具套件支持icode-slix,icode-slix2芯片的读写,支持iso1 ...
- 「JSOI2015」圈地
「JSOI2015」圈地 传送门 显然是最小割. 首先对于所有房子,权值 \(> 0\) 的连边 \(s \to i\) ,权值 \(< 0\) 的连边 \(i \to t\) ,然后对于 ...
- LeetCode日常小习题
LeetCode练习题: 1.给定一个大小为 n 的数组,找到其中的众数.众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素. 你可以假设数组是非空的,并且给定的数组总是存在众数. 示例 1: 输入 ...
- 树莓派raspbian安装matchbox-keyboard虚拟键盘
环境:raspbian-stretch(2018-06-27) 树莓派:3代B型 官网安装地址:http://ozzmaker.com/virtual-keyboard-for-the-raspber ...
- selenium Python实现附件上传
对于web页面的上传功能一般有两类实现方式:一类是将本地文件的路径作为一个值放在input标签中,通过form表单将这个值提交给服务器:另一个类是插件上传,一般基于flash/javascript或者 ...
- QBImagePickerController 不可选择照片流中照片
因为QBImagePickerController使用的ALAssetsLibrary方式来读取图片,如果采用默认方式去执行,那么根据url读取到的asset会为空,这时候我们就 需要特殊处理 [se ...