I'm not a native English speaker, and i'm new to .net Core
.
I have a task to port the logic of a WPF
app to .Net Core
while leaving this app working like previously. The app has approximately 70 Visual Studio
assemblies:
- Say, 40 of them are related to logic and must become cross-platform.
- Say, about 20 of the logic-related assembles use
WCF
orClipboard
or other things that do not work on .Net Core.
I'm going to create the new solution from scratch.
This solution should have assembles targeting .Net Framework
, .Net Core
, and both Framework
+Core
.
But how is it best to organise this new solution?
Should I have 3 Solution Folders/Categories of assembles:
Framework
AssemblesCore
AssemblesMultitargeted
Assembles
?
Implying that:
- the numbers above are correct
- each of the 20 logic-related assembles with things that do not work on
.Net Core
fall into 3 new assembles (Core, Framework, MultiTargeted) - the
core
-only assemblies implement the same features in.net Core
as inframework
or just contain stubs orNotImplementedExceptions
, the amount of assembles in the end should be: 30 + 20 + 20*3 = 110
in this case.
UPD: I'm aware of the possibility of using conditional compilation via directives, therefore having 1 assembly instead of three. I'm not sure, but i have a preconception that this is not a nice approach (adds mess to code).
UPD2: More about compiler directives: Are Compiler Directives an Antipattern?
Thanks!