小编Nie*_*nch的帖子

使用JQuery在按钮上添加onclick操作

我有一个按钮,已经有一个onclick事件和一个指定的功能.我希望在它前面添加另一个函数调用.我可以想象应该可以摆弄onclick属性(attr),但我不认为这是最佳实践.

您认为在现有onclick事件上添加函数调用的最佳做法是什么?

jquery

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

LINQ with Entity Framework,得到计算总和

我有以下数据:

在此输入图像描述

数字可以为NULL

我正在编写LINQ语句以获得以下数字:

  • 因子110的100是110
  • 因子90的200是180

需要的结果:290

我的LINQ语句目前看起来像这样:

(from b in data
where b.Number.HasValue
select new
{
    Number = b.Number.Value,
    b.Factor
}).Sum(o => o.Number * (o.Factor / 100));
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

转换为值类型'Decimal'失败,因为具体化值为null.结果类型的泛型参数或查询必须使用可空类型.

c# linq linq-to-entities entity-framework sum

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

防止 Azure 关闭我的应用服务

我正在 Azure 应用服务上运行 .NET Core Web 应用程序(应用服务计划配置为使用 S1)。它是稳定的。

然而,我最近对生产运行了一个自动化测试,它在几分钟内导致了数百个错误。此后,应用服务长时间不可用。

我知道应用程序服务基本上使用 IIS,并且我知道 IIS 中有一个设置可以在短时间内因出现太多错误而关闭应用程序服务。我假设这是对我的应用程序生效的设置。

我的问题是:即使短时间内发生许多错误,如何防止 Azure 关闭我的应用服务?

azure azure-web-app-service

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

Polly 没有超时

我试图让 Polly 在 3 秒后超时以及返回某些 http 代码时再次尝试。但是,直到 100 秒后 HttpClient 超时后才会超时。

这是我的代码:

private static Polly.Wrap.AsyncPolicyWrap<HttpResponseMessage> GetPolicy()
{
    var timeoutPolicy = Policy.TimeoutAsync(3, Polly.Timeout.TimeoutStrategy.Optimistic);

    var retryPolicy = Policy
        .Handle<HttpRequestException>()
        .OrResult<HttpResponseMessage>(r =>
            r.StatusCode == HttpStatusCode.TooManyRequests ||
            r.StatusCode == HttpStatusCode.ServiceUnavailable ||
            r.StatusCode == HttpStatusCode.Forbidden)
        .WaitAndRetryAsync(3, i => TimeSpan.FromSeconds(3));

    var policy = retryPolicy.WrapAsync(timeoutPolicy);
    return policy;
}
Run Code Online (Sandbox Code Playgroud)

更新

根据要求,这是我使用该策略的代码。

var pollyResponse = await GetPolicy().ExecuteAndCaptureAsync(() =>
      httpClient.SendAsync(GetMessage(HttpMethod.Delete, endpoint))
);
Run Code Online (Sandbox Code Playgroud)

以及生成 HttpRequestMessage 的辅助方法:

private HttpRequestMessage GetMessage<T>(HttpMethod method, string endpoint, T content)
{
    var message = new HttpRequestMessage
    { …
Run Code Online (Sandbox Code Playgroud)

c# timeout dotnet-httpclient polly retry-logic

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