小编Enr*_*ico的帖子

将 Swagger 描述添加到最小的 .NET 6 API

我在 .NET 6 中有一个小项目,其中包含类似的最少 API

app.MapGet("/clients",
     async (IClientRepository repo) =>
     {
          var results = await repo.GetClientsAsync();
          return mapper.Map<IEnumerable<ClientModel>>(results);
     });
Run Code Online (Sandbox Code Playgroud)

SwaggerUI我可以使用这个 API,但我找不到向其添加描述的方法(尽管在项目设置中我检查了创建 API XML 文档)。

在此输入图像描述

如何添加 XML 注释?

c# swagger swagger-ui .net-6.0 minimal-apis

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

ASP.NET Core 8 Web API:如何添加版本控制?

我正在创建一个新的 ASP.NET Core 8 Web API。在我之前使用 .NET 6 或 .NET 7 的项目中,我可以使用:

services.AddApiVersioning(options =>
{
    options.DefaultApiVersion = new ApiVersion(1, 0);
    options.AssumeDefaultVersionWhenUnspecified = true;
    options.ReportApiVersions = true;
});

services.AddVersionedApiExplorer(options =>
{
    options.GroupNameFormat = "'v'VVV";
    options.SubstituteApiVersionInUrl = true;
});
Run Code Online (Sandbox Code Playgroud)

现在,该软件包Microsoft.AspNetCore.Mvc.ApiExplorer已被弃用,我将其替换为新软件包Asp.Versioning.Mvc.ApiExplorer,但没有AddVersionedApiExplorer.

在此输入图像描述

在 Swagger 的配置中,我有以下代码:

public class ConfigureSwaggerOptions : IConfigureNamedOptions<SwaggerGenOptions>
{
    private readonly IApiVersionDescriptionProvider _provider;

    public ConfigureSwaggerOptions(IApiVersionDescriptionProvider provider)
    {
        _provider = provider;
    }

    public void Configure(SwaggerGenOptions options)
    {
        foreach (var description in _provider.ApiVersionDescriptions)
        {
            options.SwaggerDoc(
                description.GroupName,
                CreateVersionInfo(description));
        } …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-core asp.net-core-webapi .net-8.0

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

如何为 CORS 配置 Azure API 管理

我已经创建了 Azure API 管理服务并连接了我的 API。我CORS给它们添加了策略。

在此输入图像描述

我检查了计算有效策略,结果是这个策略

在此输入图像描述

<policies>
    <inbound>
        <!-- base: Begin Product scope -->
        <!-- base: Begin Global scope -->
        <cors allow-credentials="true">
            <allowed-origins>
                <origin>https://developer.mydomain.com</origin>
            </allowed-origins>
            <allowed-methods preflight-result-max-age="300">
                <method>*</method>
            </allowed-methods>
            <allowed-headers>
                <header>*</header>
            </allowed-headers>
            <expose-headers>
                <header>*</header>
            </expose-headers>
        </cors>
        <!-- base: End Global scope -->
        <!-- base: End Product scope -->
        <cors>
            <allowed-origins>
                <origin>*</origin>
            </allowed-origins>
            <allowed-methods>
                <method>GET</method>
                <method>POST</method>
            </allowed-methods>
        </cors>
    </inbound>
    <backend>
        <!-- base: Begin Product scope -->
        <!-- base: Begin Global scope -->
        <forward-request />
        <!-- base: End …
Run Code Online (Sandbox Code Playgroud)

azure cors azure-api-management

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

如何用Xcode 8表示崩溃日志?

我应该从我的设备中获得符号.我按照http://jmillerdev.net/symbolicating-ios-crash-files-xamarin-ios的说明进行操作.

我创建了aliasfor Xcode 8

别名symbolicate ="/ Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash -v"

我更新了开发人员目录

export DEVELOPER_DIR ="/ Applications/Xcode.app/Contents/Developer"

然后是符号

symbolicate -o"symbolicatedCrash.txt""MyAppName 2-12-14,9-44 PM.crash""MyAppName.app"

但我有一个错误

象征myInventories170313.crash ...在阅读myInventories170313.crash时,没有这样的文件或目录:at /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash line 899.

终奌站

symbolicatecrash ios

9
推荐指数
3
解决办法
9558
查看次数

用于点对点视频聊天的 ASP.NET Core 和 WebRTC

我想要实现的是一个 POC,其中两个用户使用 ASP.NET Core 和 WebRTC(如果需要 SignalR)在对等视频通话中聊天。

模拟屏幕

我阅读了很多关于 WebRTC的文档,但我发现的大多数示例都不起作用,因为它们显示了该协议的旧实现(例如本教程)。另外,我在Github上看到了这个实现,但它使用getUserMedia. 如果我使用最新版本的adapter.js.

错误信息

我用谷歌搜索了一下,我发现了其他例子,比如一篇关于html5rocks 的文章:在这种情况下,indx.html在本地工作,但如果我将它部署在服务器上,我会收到这个错误。

在此处输入图片说明

我尝试使用的最后一个脚本是Simple Peer

如果我理解正确,新的正确方法是使用RTCPeerConnectionand RTCDataChannel。我找不到工作示例。

signalr webrtc asp.net-core

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

如何在 Blazor 中设置文本区域/输入最大长度

在 Blazor 中,我想将maxlength属性添加到input类似的

<textarea type="text" name="TheNameOfMyField" 
          class="TheNameOfMyClass" value="" rows="2" maxlength="255">
</textarea>
Run Code Online (Sandbox Code Playgroud)

Blazor 中的组件是这样的

<InputTextArea @bind-Value="_model.ShortDescription" 
               class="form-control" id="gapShortDescription" />
Run Code Online (Sandbox Code Playgroud)

并且没有 maxlength 或自定义 HTML 属性的选项。

我怎样才能做到这一点?

blazor blazor-webassembly

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

将 Visual Studio 更新到 17.4.0 Preview 2.1 后出现工作负载错误

今天我将 Visual Studio 更新到 17.4.0 Preview 2.1。

Microsoft Visual Studio Community 2022(64 位)- 预览版 17.4.0 预览版 2.1

之后,我无法部署 Blazor 应用程序,因为出现以下错误:

要构建此项目,必须安装以下工作负载:wasm-tools-net6 要安装这些工作负载,请运行以下命令:dotnet工作负载恢复

我运行了命令但没有任何改变。

在此输入图像描述

我该如何修复它?

visual-studio

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

C# Azure Function 具有到服务总线的多个输出

我看到了有关 Azure Functions 版本 3 的Azure 服务总线输出绑定的 Microsoft 文档。当我想将消息发送到服务总线作为函数的返回时,我可以使用以下代码:

[FunctionName("ServiceBusOutput")]
[return: ServiceBus("myqueue", Connection = "ServiceBusConnection")]
public static string ServiceBusOutput([HttpTrigger] dynamic input, ILogger log)
{
    log.LogInformation($"C# function processed: {input.Text}");
    return input.Text;
}
Run Code Online (Sandbox Code Playgroud)

当我想将 2 条消息作为输出发送到不同的服务总线时,我的问题就开始了。是否可以输出绑定多个输出?在在线编辑器中,您可以添加多个输出。我怎样才能在代码中做到这一点?

在文档中有一个用法部分,它解释了我可以使用什么作为输出绑定。他们提到ICollector<T>IAsyncCollector<T>但我不确定这就是我要找的。

另一个问题是,如果 API 将一个值返回给总线,将另一个值返回给用户,会发生什么情况?

c# azureservicebus azure-servicebus-queues azure-functions

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

Xamarin解决方案:当我尝试在同一个项目中使用某个组件时出现异常(不同的命名空间)

在我的Xamarin解决方案中,我在Controls解决方案文件夹中添加了一个新的库项目.从我XAMLViews我打电话给我的分量和一切工作正常.

我不知道在更新之后今天是否有什么变化iOS 10,Visual Studio for Mac但是如果我尝试编译我的解决方案,我不会收到错误

System.Reflection.TargetInvocationException:调用目标抛出了异常.---> Xamarin.Forms.Xaml.XamlParseException:位置43:38.在xmlns clr-namespace中找不到类型Donut:Mobile.Controls.Wheel; assembly = Mobile.Controls.Wheel
at Xamarin.Forms.Xaml.Internals.XamlTypeResolver.Xamarin.Forms.Xaml.IXamlTypeResolver.Resolve(System.String qualifiedTypeName,System .IServiceProvider serviceProvider)

XAML页面是这样定义的:

<ContentPage [...]
    xmlns:ctl="clr-namespace:Mobile.Controls.Wheel;assembly=Mobile.Controls.Wheel" 
    x:Class="Views.DashboardPage">
    <StackLayout>
        <ctl:Doughnut HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" />
    </StackLayout>
</ContentPage>
Run Code Online (Sandbox Code Playgroud)

Doughnut是衍生自类ContentViewMobile.Controls.Wheel.

custom-controls xamarin.forms

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

在 ASP.NET Core 上通过身份验证保护静态文件

在上一个问题中,我问了一个通用问题如何添加静态内容的权限。在这里我想说得更准确一些。

\n

在我的项目中,我添加了一个文件夹wwwroot来简化代码,我在其中保存要保护的 html 文件。该文件夹称为infographics

\n

在此输入图像描述

\n

每个文件的属性是:

\n
    \n
  • 构建操作:内容
  • \n
  • 复制到输出目录:不复制
  • \n
\n

在此输入图像描述

\n

按照Microsoft文档的说明,我更改了Startup.cs

\n
public class Startup\n{\n    public Startup(IConfiguration configuration)\n    {\n        Configuration = configuration;\n    }\n\n    public IConfiguration Configuration { get; }\n\n    // This method gets called by the runtime. Use this method to add services to the container.\n    public void ConfigureServices(IServiceCollection services)\n    {\n        services.AddControllersWithViews();\n        services.Configure<IdentityServerConfiguration>(Configuration.GetSection("IdentityServerConfiguration"));\n\n        services.AddDistributedMemoryCache();\n\n        services.AddSession(options =>\n        {\n            options.Cookie.Name = ".my.Session";\n            options.IdleTimeout = TimeSpan.FromHours(12);\n        });\n\n        services.AddAuthentication(options =>\n …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-core

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