小编ttu*_*tes的帖子

Azure应用服务内存使用情况.在哪里看到完全崩溃?

我们最近在Azure应用服务计划下的网站上内存不足.

这会在所有应用程序上引发"内存资源耗尽"错误.

单击"CPU百分比和内存百分比"表示在过去24小时内峰值达到82%.

导航到"每个实例的度量标准(应用服务计划)"我可以看到所有Web应用程序.在应用程序服务计划使用率达到82%时,以MB为单位添加所有工作集的比例高达22%.

这个答案建议在Kudu中查看内存使用情况.

Azure Dashboard或Kudu有没有办法显示特定"应用服务计划"内存使用情况?

azure azure-web-sites

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

IdentityServer4 - 如何实施模拟

我要求允许我们的内部支持用户冒充我们的客户用户.

我目前正在使用IdentityServer4,Implicit Flow和OIDC Client.

迄今为止找到的资源.

鉴于在线资源有限,我是否可以/应该使用IdentityServer4实施模拟?

impersonation asp.net-core identityserver4 implicit-flow oidc-client-js

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

迁移到.Net Core的CreateRef方法导致404,如何使用.Net Core在OData中实现Create Relationships

我有2个POCO,课程和特征与int PKs.我设置了导航属性,以便我可以成功地$expand这样:

  • http://localhost:54321/odata/Lessons?$expand=Traits
  • http://localhost:54321/odata/Traits?$expand=Lessons

我将从Net 461迁移到.Net Core 2的最后一个障碍是创建关系.

具体来说,当我尝试调用以下方法时,通过以下请求,我得到一个404.

[AcceptVerbs("POST", "PUT")]        
public async Task<IActionResult> CreateRef(
    [FromODataUri] int key, string navigationProperty, [FromBody] Uri link)
{
    ....  Do Work
}
Run Code Online (Sandbox Code Playgroud)

邮差要求:

http://localhost:54321/odata/Lessons(1)/Traits/$ref
Run Code Online (Sandbox Code Playgroud)

身体:

 {
    "@odata.id":"http://localhost:54321/OData/traits(1)"
 }
Run Code Online (Sandbox Code Playgroud)

以下是我的Startup.Configure方法.

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    ...
    var builder = ConfigureOdataBuilder(app);

    app.UseMvc(routeBuilder =>
    {
        routeBuilder.Select().Expand().Filter().OrderBy().MaxTop(null).Count();
        routeBuilder.MapODataServiceRoute("ODataRoute", "odata", builder.GetEdmModel());

        // Work-around for #1175
        routeBuilder.EnableDependencyInjection();
        routeBuilder.MapRoute(name: "default", template: "{controller=Home}/{action=Index}/{id?}"); // enable mvc controllers
    });            
}

private ODataConventionModelBuilder ConfigureOdataBuilder(IApplicationBuilder app)
{ …
Run Code Online (Sandbox Code Playgroud)

odata asp.net-core

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

如何实现最小控制器

我有一个ASP.NET Core 1.1 Web项目.

我已经安装了Microsoft.OData.Core,并在http://odata.github.io/下链接了"Getting Started" .

该页面上的以下链接均适用于.Net 45

这个月的旧答案链接到Microsoft.AspNetCore.OData,它不归Microsoft所有,最近一年前更新过.

这个SO答案暗示"ASP.net核心中的OData支持"

我看到这个第三方解决方案AutoODataEF.Core自动生成控制器.

最后,我看到这个git问题表明ASP.Net Core的OData WebAPI即将推出,但最终目前无法使用.

假设我有一个Person模型和一个EF DbContext.

如何实现最小的OData控制器?

odata .net-core restier asp.net-core

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

使用OAuth2隐式流(IdentityServer4),用户是否必须在访问令牌到期时重新输入密码?

我需要为Angular2客户端WebApp实现授权/身份验证以与资源服务器(WebApi)进行通信.

我正在调查IdentiyServer4并选择Grant Type/Flow.这里

  1. 资源所有者密码凭证授权(我们现在使用的.)"这是所谓的"非交互式"身份验证,通常不建议使用".
  2. 授权代码和混合< - 解决隐式流程不允许刷新令牌.(对我来说似乎相当复杂.但这是要走的路吗?)
  3. 隐含流量 - 推荐用于我所看到的SPA.但是不支持刷新令牌..

使用Implicit Flow时,如何不要求SPA的用户每隔3600秒输入一次密码?推荐的access_token生命周期.我认为在获取新的授权URL时我有一些不明白的地方.

我看过的资源.

谢谢Scott的回答.我有一些阅读要做.

oauth-2.0 openid-connect identityserver4

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

由Lighthouse测量的Hello World Angular CLI(为什么慢而且巨大?)

是否需要对Angular CLI Hello World应用优化,还是这是一个有效的"性能"结果?

在将Lighthouse应用于我们的live angular 4项目时,我们将与Angular CLI Hello World进行了比较.

从控制台:

npm install -g @angular/cli
ng new my-dream-app
cd my-dream-app
ng serve --prod
Run Code Online (Sandbox Code Playgroud)

在Chrome中 - > F12 - >审核 - >运行灯塔.

  • 表现为39/100.
  • 第一个有意义的油漆是15,250毫秒
  • 感知速度指数:15,248(目标:<1,250)
  • 拥有巨大的网络负载:总大小为2,453 KB(目标:<1,600 KB)

更新1

感谢@Moshe,使用:

ng serve --prod --build-optimizer
Run Code Online (Sandbox Code Playgroud)

提供以下内容: - 性能为96/100. - First Meaningful Paint是2,040ms - 感知速度指数:2,054(目标:<1,250); 等级92/100

最终难以形成一个单一,简明的问题.我理解 ng serve 不是为了生产使用,即使使用ags ..但这允许我在发布之前在我的localhost上进行测试.

lighthouse angular-cli angular

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

使用Identity配置IdentityServer 4,组合services.AddAuthentication()和services.AddIdentity()

使用带有隐式流/授权类型的Identity Server 4,.NetCore2.0和MS Identity;

我不清楚以下的责任,因为每个具体涉及验证/授权持票人令牌.

我有以下启动:

    public void ConfigureServices(IServiceCollection services) {
        ...
        services.AddAuthentication("Bearer")
           .AddIdentityServerAuthentication(options =>
           {
               options.Authority = GetAuthentication().ApiURL;
               options.RequireHttpsMetadata = false;

               options.ApiName = "afapps";
           });

        // Below needed to inject UserManager<ApplicationUser> userManager
        // elsewhere in app as this happens to be the authORization server
        // as opposed to authENtication server.
        services.AddIdentity<ApplicationUser, IdentityRole>()
            .AddEntityFrameworkStores<AuthDbContext>()                
            .AddDefaultTokenProviders();
    }

    public void Configure(IApplicationBuilder app) {
        app.UseAuthentication();
        app.UseMvc();
    }
Run Code Online (Sandbox Code Playgroud)

如果我services.AddIdentity<ApplicationUser, IdentityRole>()...在启动时省略.在控制器我可以成功地使用[授权]和我的其他自定义ActionFilters显示HttpContext.User.Identity.IsAuthenticated== true.

但是,添加后services.AddIdentity<ApplicationUser, IdentityRole>()...才能启用Identity的使用UserManager<ApplicationUser> …

asp.net-identity identityserver4 asp.net-core-2.0

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

如何使用数组聚合、Join 或 Union 成平面 Json 对象?

我的数据看起来像:

客户

CustomerId  CustomerName CustomerEmail  
------------------------------------------
1           Ben          Ben@gmail.com
2           Robert       Robert@gmail.com
3           Paul         Paul@gmail.com
Run Code Online (Sandbox Code Playgroud)

客户联系人

CustomerContactId  CustomerId  ContactName   ContactEmail
----------------------------------------------------------
99                 1           Lisa          Lisa@msn.com
98                 3           Jane          Jane@msn.com
97                 3           Wendy         Wendy@msn.com
Run Code Online (Sandbox Code Playgroud)

这是我正在寻找的结果:

[
    {
        "CustomerId": 1,
        "Names": [ "Ben","Lisa" ],
        "Emails": [ "Ben@gmail.com","Lisa@msn.com" ]
    },
    {
        "CustomerId": 2,
        "Names": [ "Robert" ],
        "Emails": [ "Robert@gmail.com" ]
    },
    {
        "CustomerId": 3,
        "Names": [ "Paul","Jane","Wendy" ],
        "Emails": [ "Paul@gmail.com","Jane@msn.com","Wendy@msn.com" ]
    }
]
Run Code Online (Sandbox Code Playgroud)

我尝试过的: 我很尴尬地说我还没有接近:

CustomerId  CustomerName CustomerEmail  
------------------------------------------ …
Run Code Online (Sandbox Code Playgroud)

sql t-sql azure-sql-server sql-server-2017 for-json

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

连接后动态更改角度材质叠加位置

有许多叠加层需要在window-resize事件发生后重新定位。

当前配置的初始值PositionStrategy 具有依赖于外部变量来对齐 Overalys 的逻辑,类似于 CSS 网格/Flexbox 行为。

这个material2 github问题似乎表明只能使用OverlayRef.dispose()=> OverlayRef.create()

有没有满足以下条件的解决方案:

  • 可以用非静态值更新位置。
  • 不破坏组件实例。

最好能够从服务而不是OverlayRef组件实例中调用。

为了清楚起见,编辑 1: 鉴于以下内容PositionStrategyOverlayRef.updatePosition()似乎不适用于重新计算 px 的需要。 *笔记 window.innerWidth

      private setChannelPosition(): PositionStrategy {
        const chatWidth = 280;
        const chatSpace = 5;
        const distanceFromEdge = 80;

        const existingModalCount = this.channelModals.size;
        const numModalsCanFit = 
           Math.floor((window.innerWidth - 2 * distanceFromEdge) / (chatWidth + chatSpace));
        const distFromRight = 
           distanceFromEdge + ((existingModalCount % numModalsCanFit) * (chatWidth + …
Run Code Online (Sandbox Code Playgroud)

overlay angular-material angular-material2 angular angular-cdk

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