如果我使用项目属性页面在Visual Studio 2017中为.Net Core Web项目设置环境变量,我可以使用读取变量的值Environment.GetEnvironmentVariable; 但是,当我为xUnit测试项目设置环境变量然后调试测试时,Environment.GetEnvironmentVariable总是返回null.是否存在一个事实,即它是一个测试项目,应该阻止变量与Web项目一样使用?如果是这样,有没有办法可以为测试项目设置环境变量?谢谢.
我正在使用SQL Server部署项目。如果在项目设置中声明参数,则即使在项目设置中为参数指定默认值时,使用SqlPackage.exe执行dacpac时也必须为该变量指定一个值。为什么是这样?我解压缩了dacpac文件,发现默认值甚至没有与参数声明一起存储。每个人都有这种经验吗?有没有一种方法可以使用带有默认值的参数的程序包,如果我只想使用默认值,则无需为SqlPackage.exe声明该参数?
对于经典的.Net项目,如果我添加了对NuGet包的引用,它将被下载到packages文件夹,我可以将其与我的其余代码一起检查到源代码控制中.这允许任何开发人员下载代码以及NuGet包,而无需设置包源来单独下载包.这不是.Net Core项目的工作方式.似乎没有解决方案的包文件夹,每个开发人员都可以设置自定义包源并在获取代码时下载包.有没有办法配置.Net Core项目像经典的.Net项目那样管理一个包文件夹?
我在一个解决方案中有一个 .Net Standard 项目,我希望 msbuild 在我们的构建服务器上构建它。如果我不先运行“nuget restore”,我会收到错误“project.assets.json' not found. Run a NuGet package restore”。我已经在解决方案级别的“包”文件夹中拥有所有必要的 NuGet 包。我想以某种方式表明 msbuild 应该只使用本地“包”文件夹中的文件,而不是尝试重新下载文件。我怎样才能做到这一点?谢谢你。
我按照Microsoft 文档中的说明配置 UseHsts,但是当我访问我的网站时,我没有看到 Strict-Transport-Security 标头。我在配置上尝试了几种变体,但似乎没有任何影响。任何想法我缺少什么?
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddHsts(options =>
{
});
services.AddHttpsRedirection(options =>
{
});
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseHsts();
app.UseHttpsRedirection();
app.UseMvc();
}
Run Code Online (Sandbox Code Playgroud)
这是我在 Chrome 中获得的标题图像,但在其他所有浏览器中看起来也一样。
这篇博客文章解释了如何在IIS中托管.Net Core网站时,在第一个请求进入IIS之前,该网站代码实际上不会运行:
这正是我所看到的行为,一旦第一个请求进入,一切便开始运行。我有一个用例,我真的需要在IIS启动后立即启动网站代码。有没有一种方法可以从网站内部以编程方式执行此操作,或者在配置中使用某些方法,因此我不必记住每次IIS重新启动时都要对我的网站执行ping操作?谢谢。