.Net Core 技巧小结


我们写好的.net core 网站想要发布运行,通常会使用IIS或者Windows服务托管,当我们引用的资源特殊,需要单独添加的时候,该怎么做呢?比如说页面加载.glb文件

IIS中MIME配置

当我们使用IIS的方式部署网站,可以打开IIS找到MIME类型
在这里插入图片描述
其中有常用的数据类型,如有需求可以点击添加

在这里插入图片描述
这样就可以正常的加载特殊格式的文件了。

Kestral中MIME配置

但是在IIS中存在回收机制,对于定时任务,如果长时间没有操作,将会自动回收,定时任务就自动清理掉了,这样就要使用Windows服务的部署方式了,那么在kestral中该如何设置呢,加上如下代码即可。

        var provider = new FileExtensionContentTypeProvider();
        provider.Mappings[".glb"] = "model/gltf-binary";

跨域访问

        app.UseCors(options =>
        {
            options.WithOrigins("http://0.0.0.0"); // 允许特定ip跨域
            options.AllowAnyHeader();
            options.AllowAnyMethod();
            options.AllowCredentials();
        });

获取应用路径

程序中往往会出现要读取配置文件的需求,然而,有时在开发环境中测试好的程序,部署了之后就出问题了,提示路径下不存在文件,其实,.net core默认的位置是C盘WINDOWS文件夹中,以下列举集中常用的获取应用程序路径的方法。

      // 获取程序的基目录。
        var path = AppDomain.CurrentDomain.BaseDirectory;
        _logger.Info(path);
        // 获取和设置当前目录(该进程从中启动的目录)的完全限定目录。
        path = Environment.CurrentDirectory;
        _logger.Info(path);
        // 获取应用程序的当前工作目录,注意工作目录是可以改变的,而不限定在程序所在目录。
        path = Directory.GetCurrentDirectory();
        _logger.Info(path);
        // 获取和设置包括该应用程序的目录的名称。
        path = AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
        _logger.Info(path);

得到结果如下:

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值