标签: appsettings

标记问题中的AppSettings

我想把它放在我的标记中:

<script type="text/javascript" src="<%$ AppSettings:proxyScriptUrl %>"></script>
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,这是不被接受的.我在这做错了什么?

要求是我不使用辅助方法,而是在标记中使用expressionbuilder.

asp.net appsettings

2
推荐指数
2
解决办法
1623
查看次数

在Windows 7/Vista中编写驱动器C:

我正在开发一个应用程序,将其设置保存在安装文件夹中.如果我在驱动器C:上的Program Files中安装应用程序并尝试编写设置文件,我会得到一个例外,就是这样.

我知道用户帐户控制(UAC)migth是不允许我的应用程序修改文件内容的那个.

我需要以下问题的帮助:

  • 以至少应显示UAC警告的方式进行文件编辑,如果我回答是,则文件变为可写
  • 如果没有办法在驱动器C上编辑文件:我需要一种方法来存储数据

一个更通用的问题是:

如何创建一个C#程序,在Windows Vista下安装到C:\ Program Files\MyProgram后可以在安装目录中操作(创建/编辑/删除).ini文件?对于所有用户,此文件应该相同.

c# uac appsettings windows-7

2
推荐指数
2
解决办法
1212
查看次数

如何在Sharepoint母版页中包含动态信息?

我们正在创建几个(19)网站,以便在Sharepoint 2007中托管,并希望使用Google Analytics.第一点很容易,只需将Google Analytics javascript放在Sharepoint母版页中,所有内容都按预期工作.

但是,我们希望19个站点中的每个站点都生成单独的统计信息,这是通过为每个站点设置不同的ID来完成的.我的第一个想法是将id存储在每个站点的web.config中,并更改母版页以便为javascript读取此内容:

<%= ConfigurationManager.AppSettings["google.analytics.key"]%> 
Run Code Online (Sandbox Code Playgroud)

不幸的是,Sharepoint不喜欢这样说并且说:此文件中不允许使用代码块.

我的问题是:

有没有办法在Sharepoint母版页中从web.config读取appSettings?要么

是否有更好的Sharepoint方式将特定于站点的信息导入母版页?要么

我是否坚持为每个网站使用单独的母版页?

sharepoint web-config sharepoint-2007 appsettings

2
推荐指数
2
解决办法
1603
查看次数

如何在Azure中使用.NetCore 2.0中的WebAPI上的应用程序设置

我有一个WebAPI,我将在Azure上发布它.我在我的应用程序上使用.Net Core 2.0.

我有一个名为appsettings.json的文件,它具有以下配置:

{
  "Logging": {
    "IncludeScopes": false,
    "Debug": {
      "LogLevel": {
        "Default": "Warning"
      }
    },
    "Console": {
          "LogLevel": {
        "Default": "Warning"
      }
    }
  },
  "AppConfiguration": {
    "MyVariable": false,
  }
...
}
Run Code Online (Sandbox Code Playgroud)

在我的应用程序中,在localhost中运行,我可以从"MyVariable"获取值.

当我将它发布到Azure时,我也可以从"MyVariable"中获取值.

但是,当我转到我的Azure应用程序的应用程序设置时,我将"MyVariable"设置为"true",但我的应用程序不断获得值"false".

总而言之,我无法从appsettings.json获取Azure的价值.

我尝试在Azure上使用以下键值:

AppConfiguration:MyVariable - true

MyVariable - true

他们都没有工作.

任何人都可以帮助我如何从Azure应用程序设置中获取价值?

编辑1 我的程序类:

    public static IWebHost BuildWebHost(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
               .ConfigureAppConfiguration(
                    (WebHostBuilderContext context, IConfigurationBuilder builder) =>
                    {
                        builder.Sources.Clear();

                        builder
                            .AddEnvironmentVariables()
                            .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
                    })
            .UseApplicationInsights()
            .UseStartup<Startup>()
            .Build();
Run Code Online (Sandbox Code Playgroud)

c# asp.net appsettings azure asp.net-core-2.0

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

如何在参数中为自定义 Enricher 编写正确的 appsettings.json 文件

我有一个自定义的 Enricher:CorrelationIdsEnricher为了编写CorrelationIdRequestId记录,它的构造函数有一个参数:ICorrelationContextProvider用于传递相关上下文提供程序。

在我的项目中,我通过阅读appsettings.json配置文件来配置 serilog 。这是配置文件:

{
  "Serilog": {
    "Using": [ "Serilog.Sinks.Console", "Common.Logging", "Common.Correlation" ],
    "MinimumLevel": "Debug",
    "WriteTo": [
      {
        "Name": "Console",
        "Args": {
          "outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level}] [{SourceContext}] [{EventId}] [{RequestId} {CorrelationId}] {Message}{NewLine}{Exception}",
          "theme": "Serilog.Sinks.SystemConsole.Themes.AnsiConsoleTheme::Code, Serilog.Sinks.Console"
        }
      }
    ],
    "Enrich": [
      "FromLogContext",
      {
        "Name": "WithCorrelationIds",
        "Args": {
          "provider": "Correlation.ServerContextProvider::Default, Common.Correlation"
        }
      }
    ],
  }
}
Run Code Online (Sandbox Code Playgroud)

但是它不能CorrelationIdsEnricher正确设置。

有谁知道为什么?

c# appsettings serilog

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

将 IOptions&lt;&gt; 注入静态类

我想保持类为静态。是否有任何解决方法可以在IOptions<EncryptionSettings>不修改访问修饰符的情况下注入?

public static class Encrypter
{
    private static readonly Encoding encoding = Encoding.UTF8;

    private static readonly EncryptionSettings _encryptionSettings;

    public static Encrypter(IOptions<EncryptionSettings> encryptionSettings)
    {
        _encryptionSettings = encryptionSettings.Value;
    }

    public static string Encrypt(string plainText)
    {
        (...)
    }

    public static string Decrypt(string plainText)
    {
        (...)
    }

    static byte[] HmacSHA256(String data)
    {
        (...)
    }
}
Run Code Online (Sandbox Code Playgroud)

'Encrypter.Encrypter(IOptions)':静态构造函数上不允许使用访问修饰符

'Encrypter.Encrypter(IOptions)':静态构造函数必须是无参数的

c# dependency-injection appsettings asp.net-core

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

从appsettings c#中读取json数组

我的数组中有 appsettings.json

"steps": [
{
  "name": "IMPORT",
  "enabled": true
},
{
  "name": "IMPORT_XML",
  "enabled": true
},
{
  "name": "COMPARE",
  "enabled": true
},
{
  "test_name": "COMPARE_TABLE",
  "enabled": true
}]
Run Code Online (Sandbox Code Playgroud)

在我的课堂上,我试图用 IConfigurationRoot _configurationRoot

我试过了:

var procSteps = _configurationRoot.GetSection("steps");
foreach (IConfigurationSection section in procSteps.GetChildren())
{
    var key = section.GetValue<string>("test");
    var value = section.GetValue<string>("enabled");
}
Run Code Online (Sandbox Code Playgroud)

和:

var procSteps = _configurationRoot.GetSection("ExecutionSteps")
            .GetChildren()
            .Select(x => x.Value)
            .ToArray();
Run Code Online (Sandbox Code Playgroud)

但他们都没有找回我的价值观。有谁知道这是什么情况以及访问此类数组值的正确方法是什么?

.net c# json appsettings

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

如何使用值数组读取 appsettings.json

我有以下 appSettings.json 文件:

  "SundrySettings": {

    "CookieName": "Cookie",

    "AccessGroup": "Software Development",

    "Terminals" :  {
      "Raucherplatz" : "tablet1.local",
      "Service" :      "tablet2.local",  
      "Technik" :      "tablet3.local",  
      "Technik" :      "tablet4.local",  
      "Container" :    "tablet5.local"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我想加载到以下结构中:


    public class Terminal
    {
        public string Name;
        public string Description;
    }

    public class SundryOptions
    {
        public string CookieName { get; set; } = "dummy";
        public string HRAccessGroup { get; set; } = "dummy";
        public List<Terminal> Terminals;
    }

Run Code Online (Sandbox Code Playgroud)

我会尝试使用以下命令加载:

ServiceProvider sp = services.BuildServiceProvider();
SundryOptions sundryOptions = sp.GetService<IOptions<SundryOptions>>().Value;
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是使用属性初始化器永远不会正确设置终端列表。我确实需要一个列表(而不是字典),因为在我的示例中,实体可能是双重的,即 Technik。 …

c# appsettings asp.net-core

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

如何通过用户机密将值添加到对象数组 c#

因此,我在尝试让 Visual Studio 将用户机密添加到作为数组的属性时遇到了问题。我有一种感觉这种事情无法完成,但我真的需要一种方法来遍历它们中的每一个我正在做的事情,并且出于显而易见的原因,我不允许将 clientSecrets 存储在标准 appsettings 文件中.

有没有办法做到这一点,如果没有,我是否可以更改此对象以使其在 c# 中可迭代,这也允许我将密码存储在用户机密中?

下面的对象显示了我试图将值存储到其中的 appsettings 的当前形状。

{
  "TestClients": [
    {
      "ClientSecret": ""
    },
    {
      "ClientSecret": ""
    },
    {
      "ClientSecret": ""
    },
    {
      "ClientSecret": ""
    },
    {
      "ClientSecret": ""
    },
    {
      "ClientSecret": ""
    },
    {
      "ClientSecret": ""
    },
    {
      "ClientSecret": ""
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试将它变成一个 onject 并通过键进行迭代,但是当对象的形状像这样时,我正在使用的控制台应用程序似乎没有找到 TestClients 部分

{
   "TestClients": {
       "ClientName": {
           "ClientSecret": ""
       }
   }
}
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激,因为它现在是一个拦截器,提前致谢,克里斯。

c# console-application appsettings secret-key .net-core

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

在 Asp.Net Core 应用程序中使用连接字符串的最佳实践

我不能使用 EF,因为它不适用于 Oracle(或者我发现的教程已经过时且无法使用)。

我打算使用 ODP.Net 或 devart 的驱动程序。

使用 appsettings.json 中的连接字符串的最佳方法是什么?

我看过很多教程不完整或不适用于 Asp.Net Core 3.1

我的控制器

public class ReportController : Controller
{
    private readonly ConnectionString myString;
    public ReportController(IOptions<ConnectionString> connectionString)
    {
        myString = connectionString.Value;
    }

    public ActionResult Reporting_Totals()
    {
        string connectionString = myString.ToString();
        DataTable dt = new DataTable();
        using (OracleConnection oracleConnection = new OracleConnection())
        return View();
    }
Run Code Online (Sandbox Code Playgroud)

连接字符串类

public class ConnectionString
{        
    private string connectionString { get; set; }
    // enable set in singleton property instance to work correctly.
    //public static …
Run Code Online (Sandbox Code Playgroud)

c# model-view-controller appsettings asp.net-core

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