小编Sti*_*gar的帖子

如何添加与Release和Debug不同的web.config转换

我想添加一个web.config转换,以便通过MSBuild在自动构建/部署周期中使用.但是,当我使用Visual Studio添加转换时,我只获得调试和发布,并且没有选择转换的选项.据我所知,我需要添加一个新的配置文件,但我真的不需要它.我是否必须这样做或者还有其他方法来使用转换(特别是对于构建任务)?

我也担心如果我添加一个新的配置文件,我可能会破坏检查调试配置的代码:

#if DEBUG
Run Code Online (Sandbox Code Playgroud)

这个常量是在配置文件中定义的,还是配置文件本身?

基本上我的问题是如何为自动构建添加不是调试/发布的配置变换?

asp.net web-config-transform

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

如何在 Blazor 中的输入更改时绑定和运行异步方法

所以我正在构建一个 Blazor 组件,我想在其中输入输入并触发 AJAX 请求以从服务器获取过滤的数据。我试过这个

<input type="text" @bind="NameFilter" @onchange="FilterChangedAsync" />
Run Code Online (Sandbox Code Playgroud)

但是这会导致错误

属性 'onchange' 用于此元素两次或更多次。属性必须是唯一的(不区分大小写)。'@bind' 指令属性使用了属性 'onchange'。

我想过在 NameFilter 属性设置器中调用该方法,但在这种情况下我不能等待它。实现所需行为的正确方法是什么?

c# asp.net blazor

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

Azure Functions 中令人费解的存储事务

我有一个项目,其中有几个按计划运行的基于 .NET Core 的 Azure Functions。其中一个每 10 分钟运行一次,用于更新视图计数,类似于 SO 跟踪问题视图的方式,另一个则每周发送一次电子邮件。这些功能运行良好一年左右。我最近将它们更新为使用 Azure Functions SDK v3 和 Azure Functions 运行时 v3 以及 .NET Core 3.1(基本上从 .NET Core 2.1 迁移到 .NET Core 3.1,因此我需要更新函数运行时)。

有一次我收到了一张比平常高得多的账单。事实证明,共享相同底层存储帐户的函数开始对存储进行大量 API 事务。每 5 分钟就有数千次。通常,每次运行都会生成大约 100 个存储事务(可能是检索函数文件?),但在某些时候事务会急剧增加。重新启动功能后,交易会降至正常,并且几天内一切正常,然后它们再次跳跃并保持高位,直到重新启动。

功能代码没有改变,仅升级了SDK和运行时。该函数代码通过 SDK 提供的记录器进行恒定数量的日志写入(例如 7),并且不以任何其他方式与存储交互。

我有两个相同的环境,一个用于测试,一个用于生产,并且都有相同的问题。该功能发生故障所需的时间间隔是几天,但每次似乎都不同。但是,如果我同时重新启动测试和生产,下一个峰值将在两个环境中同时发生,因此存在确定性。

根据我通过 Metrics 工具的调查,违规交易类型是 Create、Close 和 ChangeNotify,以及一些 Cancel(但少于其他)。该存储不用于其他任何用途(事实上,它的存在只是因为 Azure Functions 需要后备存储来存储其文件或其他内容)

这是相关的触发代码

[FunctionName("ViewCountUpdater")]
public static async Task RunAsync([TimerTrigger("0 */10 * * * *"/*, RunOnStartup = true*/)]TimerInfo timer, ILogger log, ExecutionContext context)
Run Code Online (Sandbox Code Playgroud)

我相信我遇到了 Azure Functions 运行时或 Azure Functions .NET Core …

azure .net-core azure-functions azure-functions-runtime

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

显示转换为uint的代码示例比范围检查更有效

所以我正在研究这个问题,普遍的共识是uint cast版本比0的范围检查更有效.由于代码也在MS的List实现中,我认为它是一个真正的优化.但是,我无法生成代码示例,从而为uint版本带来更好的性能.我尝试了不同的测试,但是我的代码中缺少某些东西,或者我的代码的其他部分使检查的时间相形见绌.我的最后一次尝试是这样的:

class TestType
{
    public TestType(int size)
    {
        MaxSize = size;
        Random rand = new Random(100);
        for (int i = 0; i < MaxIterations; i++)
        {
            indexes[i] = rand.Next(0, MaxSize);
        }
    }

    public const int MaxIterations = 10000000;
    private int MaxSize;
    private int[] indexes = new int[MaxIterations];

    public void Test()
    {
        var timer = new Stopwatch();

        int inRange = 0;
        int outOfRange = 0;

        timer.Start();
        for (int i = 0; i < MaxIterations; i++)
        {
            int x …
Run Code Online (Sandbox Code Playgroud)

c# clr jit

7
推荐指数
2
解决办法
554
查看次数

ASP.NET Blazor 需要使用 InputSelect 进行验证

我正在尝试让Required 属性与InputSelect 一起使用,但验证在Blazor Server 中不起作用。该表格无需选择即可提交。有趣的是,当模型属性可为空时它会起作用。在 .NET 5.0 之前,它不适用于可空类型,因为 InputSelect 不支持它们。然而,我想要一个不可为 null 的必需属性,因为我想将 API 中的 dto 重用为模型,而且它在逻辑上是错误的。

在此输入图像描述

public class SomeModel
{
    [Required]
    public string SomeString { get; set; }

    [Required]
    public SomeEnum SomeEnum { get; set; }

    [Required]
    public SomeEnum? SomeNullableEnum { get; set; }

    [Required]
    public int SomeInt { get; set; }

    [Required]
    public int? SomeNullableInt { get; set; }
}

public enum SomeEnum
{
    A = 1,
    B = 2
}
Run Code Online (Sandbox Code Playgroud)

这一页

@page "/testrequired"
@using TestNET5BlazorServerApp.Data;


<EditForm Model="Model" OnValidSubmit="Submit"> …
Run Code Online (Sandbox Code Playgroud)

c# asp.net blazor blazor-server-side

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

使用Reflection Provider的WCF OData服务

我们需要为活动源提供API(想想Facebook),我们决定尝试OData.我们正在使用.NET,因此我们选择了WCF数据服务,但我们不使用Entity Framework(或任何其他ORM),因此我们将使用Reflection Provider.因为我们的检索方法有复杂的业务逻辑,所以我们决定将它们作为服务操作公开.但是,我们希望将删除/更新和单个实体选择公开为普通的OData REST资源.我的问题是我们如何为反射提供者实现数据源,限制对集合的访问,但允许访问单个实体(由密钥请求),允许DELETE/PUT/POST动词,还允许访问单个实体的子集合(即服务) /分类(1)/产品).基本上我只想限制对基本集合的访问(即

.net wcf odata

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

使用Entity Framework Code First时,SQL Server Sequential Guid作为密钥

我想使用EF4将实体映射到具有顺序guid作为PK的表.根据这篇文章http://leedumond.com/blog/using-a-guid-as-an-entitykey-in-entity-framework-4/ EF4支持这个,但使用edmx映射.有没有办法在使用EF4 Code First时使用服务器生成的Guids,如果是,如何使用?

.net entity-framework ef-code-first entity-framework-4.1

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

我应该何时在WinRT中保存应用程序数据?

在WinRT中,Suspended事件应该用于保存应用程序数据.它甚至可以写在Visual Studio附带的模板中.但是,当用户关闭应用程序时,Suspended事件直到10秒后才会触发.如果用户在此期间启动应用程序,则数据将丢失.在这种情况下我该怎么办?我尝试了其他事件,例如page的NavigatedFrom,但没有一个被解雇.

windows-runtime

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

Visual Studio 2017中是否存在全局.editorconfig

在Visual Studio 2017中,我们可以在项目中使用.editorconfig文件来设置项目的代码样式规则.当项目中没有编辑器配置时,可能还会使用Visual Studio本身的设置列表.在Visual Studio中是否有某个默认的编辑器,我可以替换它来设置这些设置而不是点击它们中的每一个?

visual-studio visual-studio-2017

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

如何让 ASP.NET Core 2.0 MVC Model Binder 绑定没有 FromBody 属性的复杂类型

因此,在 ASP.NET Core MVC 中,他们决定我需要在所有复杂类型的操作参数前面输入 [FromBody],因为一些传奇的 CSRF 问题似乎没有人谈论。我觉得这很荒谬,所以有没有办法让 ASP.NET Core MVC 表现得像旧的 WebAPI,而不是到处都需要 [FromBody],而只需将 JSON 的所有内容绑定到复杂类型参数?如果我能以某种方式选择它适用的控制器集,例如以 /api 开头的控制器或用特定属性装饰的控制器,那就太好了。

c# asp.net asp.net-mvc asp.net-core

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