小编bcw*_*ger的帖子

.NET Core Web API 无法正确读取环境

我有一个 .NET Core 2.0 Web API,它无法读取环境特定的 app.settings 文件。据我所知,我已遵循所有相关步骤。

这是我的Startup.cs构造函数:

public Startup(IHostingEnvironment env)
{
    var config = new ConfigurationBuilder()
        .SetBasePath(env.ContentRootPath)
        .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
        .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables();
}
Run Code Online (Sandbox Code Playgroud)

然后我有一个appsettings.json文件结构:

appsettings.json
  -appsettings.debug.json
  -appsettings.release.json
  -appsettings.production.json
Run Code Online (Sandbox Code Playgroud)

在部署我的 API 的服务器上,我有一个系统环境变量键/值对

Variable = ASPNETCORE_ENVIRONMENT Value = Release

但是,当我调用 API 时,appsettings.production.json会使用这些值,这(据我所知)ASPNETCORE_ENVIRONMENT是未找到环境变量 of 时的默认值。

关于我的设置可能缺少什么导致这种默认行为的想法?

.net c# asp.net-core asp.net-core-webapi

3
推荐指数
1
解决办法
1304
查看次数

Lisp,为什么这个数字不是浮点数

使用Common Lisp我正在尝试循环学生列表,如果GPA大于或等于3.0,我想将1推到另一个名为equal_names的列表中.我遇到的问题是解释器一直说比较列表中的GPA是"不属于类型(或理性浮点数)".为什么我收到此错误?

是的,这是作业.这也是我第一次在这里问,所以如果你还需要什么,请告诉我.

列表的样本我从GPA获得GPA,其中GPA是2.307 ......:

(SETQ students (LIST  
    (LIST (LIST 'Abbott 'Ashley 'J) '8697387888 'NONE 2.3073320999676614))) 
Run Code Online (Sandbox Code Playgroud)

我写的代码:

(setq gpa_count ())  

    (loop for x in students 
        if(>=  3.0 (cdr (cdr (cdr x))))  
            do(push '1 gpa_count))
Run Code Online (Sandbox Code Playgroud)

clisp common-lisp

1
推荐指数
1
解决办法
161
查看次数

C#从其他类调用函数

我试图在"公共静态无效的主要()"运行"progr.SetMonitorState(MonitorState.OFF)",但我得到的错误,同时试图编译:

  1. progr命名空间中不存在"SetMonitorState"...
  2. "MonitorState"在当前上下文中不存在...

我只是想制作程序,关闭我的电脑并关闭显示器(我想检查它是否会关闭我通过HDMI与PC连接的电视)

码:

using System;
using System.Diagnostics;
using System.Runtime;
using System.Data;
using System.Runtime.InteropServices;
using System.Timers;
using System.Windows.Forms;

namespace progr
{
    public class MonitorSht
    {
        public int SC_MONITORPOWER = 0xF170;
        public uint WM_SYSCOMMAND = 0x0112;

        [System.Runtime.InteropServices.DllImport("user32.dll")]
        static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);

        public enum MonitorState
        {
            ON = -1,
            OFF = 2,
            STANDBY = 1
        }

        public void SetMonitorState(MonitorState state)
        {
            Form frm = new Form();

            SendMessage(frm.Handle, WM_SYSCOMMAND, (IntPtr)SC_MONITORPOWER,(IntPtr)state);

        }
    }

    public class Shut …
Run Code Online (Sandbox Code Playgroud)

c#

1
推荐指数
1
解决办法
169
查看次数