相关疑难解决方法(0)

最后的性能优化策略

这个网站上已经存在很多性能问题,但是我发现几乎所有这些都是特定于问题且相当狭窄的问题.几乎所有人都重复这些建议,以避免过早优化.

我们假设:

  • 代码已经正常工作
  • 所选择的算法对于问题的情况已经是最佳的
  • 已经测量了代码,并且已经隔离了违规的例程
  • 所有优化尝试也将被测量,以确保它们不会使事情变得更糟

我在这里寻找的是在一个关键算法中挤出最后几个百分点的策略和技巧,除此之外别无他法.

理想情况下,尝试使答案语言不可知,并在适用的情况下指出建议策略的任何缺点.

我将使用我自己的初步建议添加回复,并期待Stack Overflow社区可以想到的任何其他内容.

language-agnostic optimization performance

600
推荐指数
28
解决办法
8万
查看次数

Swagger UI Web Api文档将枚举显示为字符串?

有没有办法将所有枚举显示为swagger中的字符串值而不是int值?

我希望能够提交POST操作并根据其字符串值放置枚举,而不必每次都查看枚举.

我试过,DescribeAllEnumsAsStrings但服务器接收字符串而不是枚举值,这不是我们正在寻找的.

有人解决了这个吗?

编辑:

public class Letter 
{
    [Required]
    public string Content {get; set;}

    [Required]
    [EnumDataType(typeof(Priority))]
    public Priority Priority {get; set;}
}


public class LettersController : ApiController
{
    [HttpPost]
    public IHttpActionResult SendLetter(Letter letter)
    {
        // Validation not passing when using DescribeEnumsAsStrings
        if (!ModelState.IsValid)
            return BadRequest("Not valid")

        ..
    }

    // In the documentation for this request I want to see the string values of the enum before submitting: Low, Medium, High. Instead of 0, 1, 2
    [HttpGet]
    public …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-web-api swagger-ui asp.net-web-api2 swashbuckle

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

为什么使用静态类?

我对静态类和静态方法有疑问.从MSDN我理解"静态类和类成员用于创建可以在不创建类实例的情况下访问的数据和函数."

因此,如果我们不想将一个类与一个实例相关联,我们将把它作为静态.这是唯一的优势吗?任何人都可以指导我在静态类的实时场景.

类中的一些时间(不是静态的)我发现了静态方法.静态方法在实际中为实例提供了多少优势/性能优势.

c# static static-classes

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

如果函数声明是静态的还是非静态的,如果它中的字段是静态的,它会有什么不同吗?

    static int _i;
    static void Display()
    {
        //operates on _i;
    }
Run Code Online (Sandbox Code Playgroud)

    static int _i;
    void Display()
    {
        //operates on _i;
    }
Run Code Online (Sandbox Code Playgroud)

哪些方案特定于方法的静态 - 非静态问题?

编辑; 注意:这个问题不是关于静态和非静态方法之间的差异,正如许多人似乎回答的那样.问题是我应该担心差异的情景/用例是什么.为清楚起见,请参阅@ ziesemer的答案,它似乎正好解决了这个问题.

c# static static-members

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