我在c#中有一个包含图形用户界面的项目。现在我们正在获得第二个硬件后端。我们想要的是可以在编译项目后决定后端使用哪个库并更改用于后端处理的类。 我看着msbuild,但我不知道如何实现它与此。有另一种或更好的方法来做到这一点?Visual Studio构建目标
1
A
回答
0
正如Mike所说的,依赖注入是正确的解决方案,在部署时包含合适的.dll以解决界面问题,这可以简单到TinyIoC。不正确的方法是使用条件引用来调整.csproj,请参阅example,但基于您的情况下的$(配置)值,因此您可以在VS或CLI中切换,它可以工作,但会带来痛苦的世界。
+0
这个想法并没有在您正在编译的计算机上安装所有必需的dll。作为后端之一的是National Instruments公司的DAQmx,它需要大约1GB的容量,未来还会有一些其他的后端,所以在linux下有一个类似configure脚本的东西,你可以选择你想要编译的后端gui。 –
+0
我的一位朋友告诉我,我应该提到每个后端都需要安装自己的sdk。如果你得到很多需要不同sdks的后端,这使得它不太合理。因此,在编译你想要编译gui的后端和sdk的程序之前,最好决定。 –
相关问题
- 1. 用Visual Studio构建自定义目标
- 2. Microsoft Visual Studio 2013构建目标
- 3. 构建新的Visual Studio项目与MSBuild目标.NET 2.0
- 4. 在Visual Studio中更改目标构建目录
- 5. 的MSBuild VS Visual Studio的构建 - 建立目标
- 6. 的Visual Studio - 构建
- 7. TFS 2015 Visual Studio构建项目变量
- 8. Visual Studio 2010无法构建项目
- 9. Visual Studio中的项目构建错误
- 10. MSBuild附加到Visual Studio项目构建
- 11. 构建VISUAL STUDIO 2008 C++项目系统
- 12. 在Docker中构建Visual Studio C++项目
- 13. Visual Studio 2015 .Net项目构建错误
- 14. PowerShell脚本构建Visual Studio项目
- 15. 使用Visual Studio 2013构建SSIS项目
- 16. 在Visual Studio上构建相关项目
- 17. 使用visual studio构建qt项目
- 18. Visual Studio为Javascript项目构建事件
- 19. 使用Visual Studio 2008构建C++项目
- 20. Visual Studio 2010不会构建新项目
- 21. 从Jamfiles构建Visual Studio项目?
- 22. 构建的Visual Studio 6项目与Visual Studio 2010
- 23. 警告MSB8012 - 在Visual Studio 2015上构建Visual Studio 2003项目
- 24. Visual Studio 2015:如何构建以Visual C++为目标的ATL项目v120
- 25. 在Visual Studio中构建XCode的目标项?
- 26. 构建许多C#项目时Visual Studio构建规避
- 27. 构建Sandcastle文档构建Visual Studio项目时
- 28. 构建前/构建事件Visual Studio
- 29. 在Visual Studio Online上构建Git标记(构建vNext,托管池)
- 30. 在构建时的Visual Studio
你不想在UI中这么做吗? – SLaks
您是否研究过像StructureMap这样的任何依赖注入(控制反转)框架?他们的目的是让你通过配置来改变你正在使用的实现。所以,你不需要在编译时担心;在运行之前,你会改变它。我假设您为后端使用了一个通用接口,以便在不更改代码的情况下轻松切换两者。 –