小编Flo*_*iwi的帖子

通用工厂方法的Unity类型注册

我正在尝试熟悉asp.net mvc,目前正在设置日志记录。

我看了一下Microsoft.Extensions.Logging并阅读了有关如何设置它的信息,但我一直在努力统一类型注册。

我想为

public HomeController(ILogger<HomeController> logger)
Run Code Online (Sandbox Code Playgroud)

我可以这样

    private static void RegisterLoggingTypes(IUnityContainer container)
    {
        ILoggerFactory loggerFactory = new LoggerFactory()
            .AddConsole()
            .AddDebug();
        container.RegisterType<ILogger<HomeController>>(new InjectionFactory(c => loggerFactory.CreateLogger<HomeController>()));
    }
Run Code Online (Sandbox Code Playgroud)

但是我不想为每种类型都声明一个。我试过了

container.RegisterType(typeof(ILogger<>), new InjectionFactory((c,t,s) => loggerFactory.CreateLogger(t)));
Run Code Online (Sandbox Code Playgroud)

但这返回的ILogger是一个ILogger(of HomeController)

知道我该怎么做吗?

谢谢

c# generics unity-container

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

asp.net core从构建中排除文件

我正在尝试将Protractor添加到我的asp.net核心应用程序中.

我通过npm添加它并安装包含文件的selenium-webdriver Page.aspx.cs.这导致了构建错误,但我的项目甚至不需要编译它.

所以我试图使用project.json排除node_modules

"buildOptions": {
  "emitEntryPoint": true,
  "preserveCompilationContext": true,
  "compile": {
    "excludeFiles": "node_modules"
  }
},
Run Code Online (Sandbox Code Playgroud)

给出Illegal characters in path一样:

 "excludeFiles": ["node_modules"]
Run Code Online (Sandbox Code Playgroud)

这似乎与_字符有关,但我无法弄清楚为什么这会是一个问题.

谢谢

c# asp.net-core

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

如何在Haskell中向字符串添加空格

我有一个字符串"AB0123456789",我想要的输出是:"AB01 2345 6789"...我想在每四个字符后添加一个空格.我怎样才能做到这一点?

Main> addSpace "AB0123456789"
"AB01 2345 6789"
Run Code Online (Sandbox Code Playgroud)

haskell

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

如何向laravel雄辩的模型添加sql函数

我想用计算列创建一个laravel模型。我已经看过下载数据后如何执行此操作,但是我希望进行的计算很昂贵,但可以在sql中作为函数来访问。本质上,我想在查询生成器中追加一列,但是不确定如何进行。

查询需要类似:

select *, my_function(ID) as my_value from my_table;
Run Code Online (Sandbox Code Playgroud)

我需要获取模型的实例作为回报(而不是原始记录集)。

我也希望避免多次查询。

谢谢。

mysql eloquent laravel-5

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