小编use*_*346的帖子

有谁知道 AsyncPageable 是什么?

我正在尝试从 Azure 服务获取所有内容,它返回 AsyncPageable。根据文档它说

可能需要多个服务请求进行迭代的值的集合。

这是否意味着它等于通过循环多次请求单个项目?

c# azure

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

在即时窗口 Visual Studio 中调用异步方法

我停在了一个断点上,我需要观察在这种情况下使用立即窗口调用异步函数的结果。所以我试过了

var things = await Client.GetThingsAsync("aParameter");
Run Code Online (Sandbox Code Playgroud)

“await”运算符只能在异步方法中使用。考虑使用“async”修饰符标记此方法并将其返回类型更改为“Task”。

但是断点已经在异步方法中了。我也试过跑

var things = Client.GetThingsAsync("aParameter");
Run Code Online (Sandbox Code Playgroud)

“评估需要一个线程临时运行。使用观察窗口执行评估。”

所以我尝试了 Watch 窗口

ClientGetThingsAsync("aParameter").Result;
Run Code Online (Sandbox Code Playgroud)

“函数评估需要所有线程运行。”

编辑代码和重新构建让我很崩溃,因为每次构建需要 15 分钟。调试时可以使用哪些策略来调用异步调用?

immediate-window visual-studio async-await

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

如何修改在 Azure Functions 中本机注入的 IConfiguration

我们需要配置提供程序添加到本机提供给 Azure Functions 的本机 IConfiguration。目前,我们正在使用以下代码其完全替换为我们的自定义 Iconfiguration:

public class Startup : FunctionsStartup
{
    public override void Configure(IFunctionsHostBuilder builder)
    {
        ...

        var configuration = new ConfigurationBuilder()
            .SetBasePath(Directory.GetCurrentDirectory())
            .AddAzureKeyVault(...)
            .AddJsonFile("local.settings.json", true, true)
            .AddEnvironmentVariables()
            .Build();

        builder.Services.AddSingleton<IConfiguration>(configuration);

        builder.Services.AddSingleton<IMyService, MyService>();
    }
}
Run Code Online (Sandbox Code Playgroud)

一些上下文

MyService 在其构造函数中需要来自 KeyVault 提供程序的值以及 Application Insights 等其他实例。如果我们保留默认的 IConfiguration,则它没有 KeyVault 值。如果我们用工厂创建 MyService 实例,我们需要手动提供 App Insights 实例等。目前替换 IConfiguration 编译和函数运行。但它打破了其他默认行为,例如不从 host.json 获取配置(我们正在尝试配置队列触发器)。使用默认的 IConfiguration 可以正确读取 host.json 中的设置。

c# dependency-injection azure-functions

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

Application Insights 未使用 Azure Functions C# 进行日志记录。命名空间似乎是问题所在

我们的函数将所有逻辑委托给另一个类“CreateHandler”,我们在其中通过 DI 使用 ILogger。该函数可以正确记录日志,但 CreateHandler 却不能。在本地,我们验证了它不会登录到控制台,除非我们将类命名空间更改为以“Function”开头的名称。这意味着 FunctionR 或 FunctionS 可以工作,但 RFunction 或 SFunction 不会。我们正在处理该类和服务。显然,我们的服务有一个完全不同的命名空间,我们需要保留该命名空间,同时进行日志记录。如何在不改变命名空间的情况下使类日志生效?

CreateHandler 类(记录正确):

using ExampleProject.Domain.Entities;
using Microsoft.Extensions.Logging;
using System.Threading.Tasks;

namespace FunctionAnything
{
    public class CreateHandler
    {
        private readonly ILogger<CreateHandler> _logger;

        public CreateHandler(
            ILogger<CreateHandler> logger)
        {
            _logger = logger;
        }

        public async Task Handle(Car car)
        {
            _logger.LogInformation($"This is logging properly");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

CreateHandler 类(不记录日志):

using ExampleProject.Domain.Entities;
using Microsoft.Extensions.Logging;
using System.Threading.Tasks;

namespace ExampleProject.Functions.Handlers
{
    public class CreateHandler
    {
        private readonly ILogger<CreateHandler> _logger;

        public CreateHandler(
            ILogger<CreateHandler> logger)
        {
            _logger …
Run Code Online (Sandbox Code Playgroud)

c# azure azure-application-insights azure-functions microsoft-extensions-logging

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

有没有一种简单的方法可以取消选择Ionic 2中的离子无线电?

在用户选择离子无线电之后,该组件将调用一个功能。我需要该功能来取消选择收音机。

模板:

  <form [formGroup]="myForm">
    <ion-list radio-group formControlName="listOptions">
      <ion-item>
        <ion-label>Option 1</ion-label>
        <ion-radio value="1" (ionSelect)="myFunction($event)"></ion-radio>
      </ion-item>
    </ion-list>
  </form>
Run Code Online (Sandbox Code Playgroud)

radio-button ionic2 angular

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

设置堆栈跟踪格式以手动返回 API 响应

目前,它返回一个难以理解的块,由多个这些东西粘在一起组成,如下所示:

在 C:\\Repositories\\projectx\\src\\ProyectX.Services\\Service.cs 中的 ProyectX.Services.Service.Validate(IList 1 myParam):第 116 行\r\n 在 ProyectX.Services.Service.Validate (IList 1 myParam) 在 C:\\Repositories\\projectx\\src\\ProyectX.Services\\Service.cs:第 116 行\r\n

目标:

在 C:\Repositories\projectx\src\ProyectX.Services\Service.cs 中的 ProyectX.Services.Service.Validate(IList 1 myParam):第 116 行

在 C:\Repositories\projectx\src\ProyectX.Services\Service.cs 中的 ProyectX.Services.Service.Validate(IList 1 myParam):第 116 行

我尝试过

Regex.Unescape(exception.StackTrace)

JsonSerializer.Serialize(exception.StackTrace, new JsonSerializerOptions() {WriteIndented = true });
Run Code Online (Sandbox Code Playgroud)

中间件位于Startup.cs中

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    app.UseMiddleware<ErrorHandlerMiddleware>();
Run Code Online (Sandbox Code Playgroud)

中间件:

using System;
using System.Collections.Generic;
using System.Net;
using System.Text.Json;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Hosting;
using ProyectX.Domain.Exceptions;
using ProyectX.Domain.Models;

namespace ProyectX.API.Middleware
{
    public class ErrorHandlerMiddleware …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc .net-core

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

如何以编程方式检查表单控件在Angular中是否有效?

我需要检入组件(不在模板中)是否由formBuilder生成的控件有效。我试过了:

if(this.miSpecialForm.controls.miName.dirty){
 console.log('Hi mom!');
}
Run Code Online (Sandbox Code Playgroud)

但是我得到了错误:

Property 'miName' does not exist on type '{ [key: string]: AbstractControl; }'
Run Code Online (Sandbox Code Playgroud)

angular2-formbuilder angular

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

分配和增量同时给出错误,为什么?

我得到Uncaught ReferenceError:后缀操作中的左侧表达式无效.这是代码:

var visitNumber = parseInt("1")++;
Run Code Online (Sandbox Code Playgroud)

javascript

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

如果我在操作定义中使用异步任务,该操作是否应该与异步相关?

说我有

public class MyController : Controller
{
...
    public async Task<IActionResult> MyAction()
    {
        DoSomethingSync();
        return View();
    }
Run Code Online (Sandbox Code Playgroud)

用得好吗?难道它不应该至少有一些异步来证明“异步任务 L...”定义的合理性吗?该控制器中的每个操作似乎都遵循相同的模式。

asp.net-mvc async-await

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

带括号的别名是什么(例如“FROM ... a(m)”)?

有人回答了关于使用现有表生成具有随机值的表的问题(仍在努力解决)。答案是这样的:

select uuid_generate_v4(), a."Account", tns."Name", tvs."Value"
from generate_series(1, 10) x(rn)
left join (
    select "Account", row_number() over(order by random()) rn from "AccountSamples"
) a on a.rn = x.rn
Run Code Online (Sandbox Code Playgroud)

我不明白 x(rn) 部分,它似乎是一个别名,但我不明白为什么它在括号内有一个“rn”,并且括号本身对我来说是新的,是 rn 另一个别名还是一个特殊的关键字?

postgresql

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

使用不带等待功能的异步函数,该函数包含另一个返回void的函数

所以我有这个WrapperFunction试图使FunctionReturningVoid被异步调用:

    public async Task WrapperFunction()
    {
        this.FunctionReturningVoid("aParameter");
    }
Run Code Online (Sandbox Code Playgroud)

这是什么都不返回的函数。在代码的某些部分(此处未详细介绍),它被称为SYNChronously,但在CallerFunction()中,我们希望它以ASYNChronously运行。

    public void FunctionReturningVoid(string myString)
    {
        Console.Write(myString);
    }
Run Code Online (Sandbox Code Playgroud)

这是已实现异步的函数,需要WrapperFunction进行操作而不阻塞otherStuff()。

    public async Task CallerFunction()
    {
        await WrapperFunction():
        int regular = otherStuff();
        ...
    }
Run Code Online (Sandbox Code Playgroud)

IDE向我警告WrapperFunction没有使用await:

这种异步方法缺少“等待”运算符,将同步运行。考虑使用“ await”运算符来等待非阻塞API调用,或者使用“ await Task.Run(...)”来在后台线程上执行CPU绑定的工作。

问题:如何在WrapperFunction中使用异步而不使用await?如果我使用await,它告诉我不能等待void。

c# async-await

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