Tag: asp.net core

ASP.NET Core appsettings.json在代码中更新

我目前正在使用asp.net core v1.1开发项目,在我的appsettings.json中我有: “AppSettings”: { “AzureConnectionKey”: “***”, “AzureContainerName”: “**”, “NumberOfTicks”: 621355968000000000, “NumberOfMiliseconds”: 10000, “SelectedPvInstalationIds”: [ 13, 137, 126, 121, 68, 29 ], “MaxPvPower”: 160, “MaxWindPower”: 5745.35 }, 我也有用来存储它们的类: public class AppSettings { public string AzureConnectionKey { get; set; } public string AzureContainerName { get; set; } public long NumberOfTicks { get; set; } public long […]

在IServiceCollection扩展中获取服务

我有这个扩展名 public static class ServiceCollectionExtensions { public static IServiceCollection MyExtension(this IServiceCollection serviceCollection) { … } } 我需要从这样的服务获取信息: services.AddAuthentication(options => { options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; }) .AddJwtBearer(JwtBearerDefaults.AuthenticationScheme, options => { var myService = <>(); options.TokenValidationParameters = this.GetTokenValidationParameters(myService); }); 我怎样才能做到这一点? 我尝试在var serviceProvider = services.BuildServiceProvider();之后获取ServiceProvider var serviceProvider = services.BuildServiceProvider(); 然后我发送serviceProvider ,但这不起作用..

ASP.NET Core Web API:程序不包含适用于入口点的静态“Main”方法

我正在开发一个ASP.NET Core Web API,它引用了大型解决方案中的其他项目(csproj)。 ASP.NET Core Web API在Visual Studio 2015中构建,并在“在我的机器上”命令提示符中使用msbuild 🙂 msbuild SomeWebAPI.xproj Compilation succeeded. 33 Warning(s) 0 Error(s) Time elapsed 00:00:01.7740626 Done Building Project . . Build succeeded. 问题是它不构建在我们的构建服务器上。 相同的msbuild-command,相同的msbuild-version,结果不同: msbuild SomeWebAPI.xproj error CS5001: Program does not contain a static ‘Main’ method suitable for an entry point [D:\TeamCity\buildAgent\work\8120f5584932b96b\S SomeWebAPI\SomeWebAPI.xproj] Compilation failed. 0 Warning(s) 1 […]

处理ASP.NET Core 1.0上的大型文件上传

当我在ASP.NET Core中将大文件上传到我的web api时,运行时会在我处理和存储上传的函数被触发之前将文件加载到内存中。 对于大型上传,这会成为一个问题,因为它既慢又需要更多内存。 对于以前版本的ASP.NET ,有一些关于如何禁用缓冲请求的文章,但我无法找到有关如何使用ASP.NET Core执行此操作的任何信息。 是否可以禁用缓冲请求,以便我的服务器上的内存不会一直耗尽?

拦截asp.net核心授权操作以在成功授权后执行自定义操作

我的网络应用控制器上有[授权]属性,因此任何端点命中都会确保用户首先被重定向到登录OAuth服务器(如果尚未登录)。 我现在想要在用户每次登录时开始将用户声明写入Web应用程序数据库。为此,我需要在每次用户成功登录/授权时在Web应用程序上运行一些代码。 我得到了一个线索,它涉及添加自定义中间件。 我的启动ConfigureServices代码目前如下: public class Startup { public Startup(IConfiguration configuration, IHostingEnvironment env) { Configuration = configuration; Env = env; } public IHostingEnvironment Env { get; } public IConfiguration Configuration { get; } public void ConfigureServices(IServiceCollection services) { services.AddMvc(); // Adds a default in-memory implementation of IDistributedCache. services.AddDistributedMemoryCache(); services.AddSession(options => { options.Cookie.HttpOnly = true; }); […]

ASP.Net Core 2配置占用了大量内存。 如何以不同方式获取配置信息?

好的,所以我有一个应用程序可以获得相当多的流量。 我一直在与Microsoft Azure和Coding团队合作解决内存问题。 他们已经看到了GB的日志,以及当我们处于高负荷状态时,发现Microsoft.Extensions.Configuration代码占据了RAM的大部分份额。 在我的API代码中,我有一个“基本控制器”,所有其他控制器都inheritance自。 这允许我分享常用方法等。 在这个基本控制器中,我创建了一个全局变量: public IConfigurationRoot _configuration { get; } 我相信这是罪魁祸首……但我不知道如何摆脱它。 这个_configuration变量允许我访问我的appsettings.json环境变量。 我不知道如何以不同的方式访问这些。 例如……在GET调用中,我需要知道是否有缓存。 bool isCaching = bool.Parse(_configuration[“Data:Cache”]); 我有一个想法是将_configuration设置为BaseController私有,并在其中创建方法以获取我需要的属性(即缓存),以便其他控制器不必传递此_configuration对象。 不确定是否私有会做任何事情,但….

ASP.NET Core 0x80004005

我是ASP.NET核心的新手,我正在尝试将基本的ASP.NET核心Web应用程序部署到Windows 2012 R2服务器。 我可以使用Visual Studio express在本地构建和运行项目,但是当我部署到服务器时出现502.5错误,确切的代码是(0x80004005)。 日志文件为空白,事件查看器不提供除上述错误代码之外的更多信息。 我怀疑我的Project.json文件有问题,如下所示: { “dependencies”: { “Microsoft.NETCore.App”: { “version”: “1.0.1”, “type”: “platform” }, “Microsoft.ApplicationInsights.AspNetCore”: “1.0.0”, “Microsoft.AspNetCore.Mvc”: “1.0.1”, “Microsoft.AspNetCore.Routing”: “1.0.1”, “Microsoft.AspNetCore.Server.IISIntegration”: “1.0.0”, “Microsoft.AspNetCore.Server.Kestrel”: “1.0.1”, “Microsoft.Extensions.Configuration.EnvironmentVariables”: “1.0.0”, “Microsoft.Extensions.Configuration.FileExtensions”: “1.0.0”, “Microsoft.Extensions.Configuration.Json”: “1.0.0”, “Microsoft.Extensions.Logging”: “1.0.0”, “Microsoft.Extensions.Logging.Console”: “1.0.0”, “Microsoft.Extensions.Logging.Debug”: “1.0.0”, “Microsoft.Extensions.Options.ConfigurationExtensions”: “1.0.0” }, “tools”: { “Microsoft.AspNetCore.Server.IISIntegration.Tools”: “1.0.0-preview2-final” }, “frameworks”: { “netcoreapp1.0”: { “imports”: [ “dotnet5.6”, […]

ASP.NET Core错误:实施忘记密码时出现无效令牌错误

在VS2017 ver 15.3.3具有Individual User Accounts模式的ASP.NET MVC Core 1.1.1应用程序中,我正在实现Forgot Passwordfunction。 该应用正确地使用生成的链接发送电子邮件。 我可以打开我的电子邮件,可以看到生成的链接如下。 链接正确显示ResetPassWord.cshtml视图。 但是当我输入所需的用户名,密码,确认密码信息并单击“提交”按钮时,我收到Invalid Token错误。 问题 :如何解决问题? 注意 : 答:如果我已登录并希望将密码重置为其他内容,则PasswordResetfunction可以正常工作。 B.不确定它是否相关:我没有使用电子邮件作为用户名。 相反,我改变了AccountCountroller的Email属性 [Required] [EmailAddress] public string Email { get; set; } 至 [Required] public string UserName { get; set; } 等等,并在ApplicationUser.cs扩展了用户属性,如下所示: ApplicationUser.cs // Add profile data for application users by adding properties to the ApplicationUser class […]

.NET Core – 无法加载文件或程序集

我正在尝试在aspnet核心1.1应用程序中使用自定义DLL(4.5框架)。 我正在使用Microsoft.NETCore.Portable.Compatibility 当我运行项目并尝试在库项目的某个类中进行调用时,vs2017抛出以下exception。 Could not load file or assembly ‘ApiHelperSock, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null’. O sistema não pode encontrar o arquivo especificado. 如果我检查bin\Debug\netcoreapp1.1我可以在这里看到我的dll。 这是我的project.json文件 { “compilerOptions”: { “noImplicitAny”: false, “noEmitOnError”: true, “removeComments”: false, “sourceMap”: true, “target”: “es5” }, “exclude”: [ “node_modules”, “wwwroot” ] } 有任何想法吗 ? —编辑— 尝试使用我的dll设置nuget包,尝试导入时出现以下错误: The package ApHelperSock 1.0.0 isn’t compatible with netcoreapp1.1 […]

asp.net 5.0 project.json中RavenDB.Client引用的问题

我正在尝试使用新的ASP.NET 5.0(又名Asp.Net vNext)构建一个RavenApiController,并且似乎无法让RavenDB.Client引用完全正常工作。 我得到的错误是 错误CS0246找不到类型或命名空间名称’Raven’(您是否缺少using指令或程序集引用?)SharedIO.ASP.NET Core 5.0 RavenApiController.cs 3 我的project.json如下 { “webroot”: “wwwroot”, “version”: “1.0.0-*”, “exclude”: [ “wwwroot” ], “packExclude”: [ “**.kproj”, “**.user”, “**.vspscc” ], “dependencies”: { “Microsoft.AspNet.Server.IIS”: “1.0.0-beta2”, “Microsoft.AspNet.Diagnostics”: “1.0.0-beta2”, “Microsoft.AspNet.Mvc”: “6.0.0-beta2”, “RavenDB.Client”: “3.0.3599”, “SharedIOModel”: “1.0.0-*” }, “frameworks”: { “aspnet50”: {}, “aspnetcore50”: {} } } 无法在第三行构建的RavenApiController.cs的代码开头为: using System; using Microsoft.AspNet.Mvc; using Raven.Client; using Raven.Client.Document;; […]