首页 > 解决方案 > Net Core 开发依赖场景

问题描述

有没有办法在下一个场景中解决?

我有一个 CLIENTAPP

CLIENTAPP 只想在本地开发中加载 LIBRARY。

如果我Condition=" '$(Configuration)' == 'Debug' "在 csproj 中使用,那么我不能从 LIBRARY 注入服务来加载 CLIENTAPP。例如,如果我想在 clientapp 的 ConfigureServices 方法中执行 UseThing()。

我的意思是如果我可以在本地使用一个不会部署但我不需要从客户端代码中删除调用的库。

这里怎么解决?

提前致谢

标签: c#asp.net-core

解决方案


您可以使用 void 方法,抖动将插入代码以仅在满足条件时实际调用。对于 DEBUG 构建,您可以使用以下内容:

[Conditional("DEBUG")]
private void UseThing(parameters here)
{
   // use your thing with the parameters
}


public void Main(string[] args)
{
  UseThing(args);  // only called in DEBUG builds
  // rest of Main goes here
}

如果您想定义自己的编译器变量而不是 DEBUG,您可以自由地这样做。


推荐阅读