共享项目上的多个预处理器指令
本文关键字:预处理 处理器 指令 项目 共享 | 更新日期: 2023-09-27 18:00:23
我在一个单独的项目中有一个共享的数据库模型,它与另一个解决方案共享,但我想使用不同的标识映射,所以我想知道是否可以使用预处理器指令。
内部共享项目示例:
#if setup1
public virtual int Id { get; protected set; }
#elif setup2
public virtual Guid Id { get; protected set; }
#endif
public virtual string Name { get; set; }
我知道你可以向项目中添加预处理器指令,但不完全确定这是如何工作的,只用于调试。In:
Project -> Properties -> build -> Conditional preprocessor symbols
我应该这样做吗:
StartupProject1 -> properties -> Conditional preprocossor symbols = setup1
StartupProject2 -> properties -> Conditional preprocossor symbols = setup2
sharedProject -> properties -> Conditional preprocossor symbols = setup1,setup2
了解如何做到这一点我最终使用了配置管理器,并创建了多个配置,基于这些配置,我只添加了唯一需要的预处理器符号
共享项目设置1配置
SharedProject -> properties -> Conditional preprocossor symbols = setup1
共享项目设置2配置
SharedProject -> properties -> Conditional preprocossor symbols = setup2
在解决方案的配置管理器中,我只是为共享项目选择了所需的设置