小编Clo*_*e24的帖子

带有静态方法的类与导出函数的打字稿

我一直在尝试对此进行研究,但找不到任何建议。我继承了一个代码库,其中团队使用带有静态方法的类,而不是辅助方法的函数。我从未见过采用这种方法并试图决定是否应该让它们返回并使用它们创建函数。我觉得这很不干净,因为您要导入整个类而不只是要使用的功能,所以导入很膨胀?

一种方法比另一种更好吗?

例如,在我不清楚的情况下:

    export class StringUtil {
      public static alterString(str: string) {
        return alteredString;
      }
    }
Run Code Online (Sandbox Code Playgroud)

    export function alterString(str: string) {
      return alteredString;
    }
Run Code Online (Sandbox Code Playgroud)

然后将这样使用:

import { StringUtil } from '../StringUtil';

getString(str: string) {
  return StringUtil.alterString(str);
}
Run Code Online (Sandbox Code Playgroud)

import { alterString } from '../helper-functions';

getString(str: string) {
  return alterString(str);
}
Run Code Online (Sandbox Code Playgroud)

typescript

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

处理 HTTP 429 错误的最佳方法

我正在使用一个 api,如果您在 5 分钟内点击它超过 250 次,它将返回 429,请求太多,响应。计数每五分钟重置一次,所以我一直这样处理:

try
{
    return request.GetResponse();  
}
catch (Exception e)
{
    if (e.Message.Contains("429"))
    {
        System.Threading.Thread.Sleep(5 * 60 * 1000);
        return request.GetResponse();
    }
    else
    {
        throw new Exception(e.Message);
    }
}
Run Code Online (Sandbox Code Playgroud)

这是处理这种情况的正确方法吗?

c# rest http-status-code-429

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

VBA用户表单.文本框作为单元格的值

我一直在寻找解决方案一段时间,但一直没有成功找到.基本上,我让我的文档的用户在用户表单中填充字段,然后我的代码放入适当的单元格中.其中一个输入字段是一个数字但是,无论我如何指示excel格式化单元格,它仍然是文本到底,我无法执行任何计算.我相信这可能是一个非常简单的修复,但到目前为止我找不到解决办法.一如既往,任何帮助表示赞赏!

谢谢!

excel vba excel-vba

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

NGRX-每次效果后运行功能

NGRX效果是否可以具有某种“回调功能”或监视程序?用例是,我试图在浏览器刷新期间保持状态。在每种效果运行之后,我想调用我的缓存服务以保存应用状态。目前,我正在通过将其添加到每个效果中来做到这一点:

tap(() => setTimeout(() => this.cacheService.saveAppState()))
Run Code Online (Sandbox Code Playgroud)

感觉应该有更好的方法来实现这一目标?

rxjs typescript ngrx ngrx-effects angular

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

无效的对象名称错误 - EntityFrameworkCore 2.0

Howdee,我遇到了实体框架的问题,告诉我这些对象在我的数据库存在时不存在,并且我使用.ToTable方法映射了名称.下面是我如何将上下文注入我的控制器:

在Startup.cs => ConfigureServices中

var connection = @"Server={myserver};
                            Initial Catalog={mydb};Persist Security Info=False;
                            User ID={myId};Password={mypassword};MultipleActiveResultSets=False;
                            Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;";

services.AddDbContext<MyContext>(options => options.UseSqlServer(connection));
Run Code Online (Sandbox Code Playgroud)

在MyController.cs中

public class MyController : Controller
{
    [HttpPost("myroute")]
    public async Task<IActionResult> CreateUser([FromBody] MyUser myUser)
    {
        try
        {
            var user = _context.MyUser
                .Where(y => y.UserName == myUser.UserName)
                .FirstOrDefault();

            if (user != null)
            {
                var result = await _signInManager.UserManager.CreateAsync(myUser);

                if (result.Succeeded) return Ok();
            }
        }
        catch (Exception ex)
        {

            _logger.LogError($"Create User Error: {ex}");
        }

        return BadRequest();
    }
}
Run Code Online (Sandbox Code Playgroud)

在MyContext.cs中

public class MyContext : …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework-core azure-sql-database

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