рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

CAD рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрд╕рд╛рдареА рдкреНрд▓рдЧрдЗрди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддрд╛рдирд╛ (рдорд╛рдЭреНрдпрд╛ рдмрд╛рдмрддреАрдд рд╣реЗ AutoCAD, Revit рдЖрдгрд┐ Renga рдЖрд╣реЗрдд) рдХрд╛рд▓рд╛рдВрддрд░рд╛рдиреЗ, рдПрдХ рд╕рдорд╕реНрдпрд╛ рджрд┐рд╕реВрди рдпреЗрддреЗ - рдкреНрд░реЛрдЧреНрд░рд╛рдордЪреНрдпрд╛ рдирд╡реАрди рдЖрд╡реГрддреНрддреНрдпрд╛ рд░рд┐рд▓реАрдЭ рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд, рддреНрдпрд╛рдВрдЪреЗ API рдмрджрд▓ рдЖрдгрд┐ рдкреНрд▓рдЧрдЗрдирдЪреНрдпрд╛ рдирд╡реАрди рдЖрд╡реГрддреНрддреНрдпрд╛ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдЬреЗрд╡реНрд╣рд╛ рддреБрдордЪреНрдпрд╛рдХрдбреЗ рдлрдХреНрдд рдПрдХрдЪ рдкреНрд▓рдЧрдЗрди рдЕрд╕рддреЗ рдХрд┐рдВрд╡рд╛ рддреБрдореНрд╣реА рдЕрдЬреВрдирд╣реА рдпрд╛ рдмрд╛рдмрддреАрдд рд╕реНрд╡рдпрдВ-рд╢рд┐рдХрд╡рд▓реЗрд▓реЗ рдирд╡рд╢рд┐рдХреНрдпрд╛ рдЕрд╕рд╛рд▓, рддреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣реА рдлрдХреНрдд рдкреНрд░рдХрд▓реНрдкрд╛рдЪреА рдПрдХ рдкреНрд░рдд рдмрдирд╡реВ рд╢рдХрддрд╛, рддреНрдпрд╛рддреАрд▓ рдЖрд╡рд╢реНрдпрдХ рдард┐рдХрд╛рдгреЗ рдмрджрд▓реВ рд╢рдХрддрд╛ рдЖрдгрд┐ рдкреНрд▓рдЧрдЗрдирдЪреА рдирд╡реАрди рдЖрд╡реГрддреНрддреА рдПрдХрддреНрд░ рдХрд░реВ рд╢рдХрддрд╛. рддреНрдпрд╛рдиреБрд╕рд╛рд░, рдХреЛрдбрдордзреАрд▓ рддреНрдпрд╛рдирдВрддрд░рдЪреНрдпрд╛ рдмрджрд▓рд╛рдВрдореБрд│реЗ рдордЬреБрд░реАрдЪреНрдпрд╛ рдЦрд░реНрдЪрд╛рдд рдПрдХрд╛рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рд╡рд╛рдв рд╣реЛрдИрд▓.

рдЬрд╕рдЬрд╕реЗ рддреБрдореНрд╣реА рдЕрдиреБрднрд╡ рдЖрдгрд┐ рдЬреНрдЮрд╛рди рдорд┐рд│рд╡рд╛рд▓, рддреБрдореНрд╣рд╛рд▓рд╛ рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреЗ рдЕрдиреЗрдХ рдорд╛рд░реНрдЧ рд╕рд╛рдкрдбрддреАрд▓. рдореА рдпрд╛ рдорд╛рд░реНрдЧрд╛рд╡рд░ рдЪрд╛рд▓рд▓реЛ рдЖрд╣реЗ рдЖрдгрд┐ рдореА рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдВрдЧреВ рдЗрдЪреНрдЫрд┐рддреЛ рдХреА рдорд▓рд╛ рдХрд╛рдп рдорд┐рд│рд╛рд▓реЗ рдЖрдгрд┐ рддреЗ рдХрд┐рддреА рд╕реЛрдпреАрдЪреЗ рдЖрд╣реЗ.

рдкреНрд░рдердо, рдПрдХ рдкрджреНрдзрдд рдкрд╛рд╣реВ рдЬреА рд╕реНрдкрд╖реНрдЯ рдЖрд╣реЗ рдЖрдгрд┐ рдЬреА рдореА рдмрд░реНрдпрд╛рдЪ рдХрд╛рд│рд╛рдкрд╛рд╕реВрди рд╡рд╛рдкрд░рд▓реА рдЖрд╣реЗ.

рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╛рдЗрд▓реНрд╕рдЪреНрдпрд╛ рд▓рд┐рдВрдХреНрд╕

рдЖрдгрд┐ рд╕рд░реНрд╡рдХрд╛рд╣реА рд╕реЛрдкреЗ, рджреГрд╢реНрдпрдорд╛рди рдЖрдгрд┐ рд╕рдордЬрдгреНрдпрд╛рдЬреЛрдЧреЗ рдмрдирд╡рдгреНрдпрд╛рд╕рд╛рдареА, рдореА рдкреНрд▓рдЧрдЗрди рдбреЗрд╡реНрд╣рд▓рдкрдореЗрдВрдЯрдЪреЗ рдЕрдореВрд░реНрдд рдЙрджрд╛рд╣рд░рдг рд╡рд╛рдкрд░реВрди рд╕рд░реНрд╡рдХрд╛рд╣реА рд╡рд░реНрдгрди рдХрд░реЗрди.

рдЪрд▓рд╛ рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУ рдЙрдШрдбреВ (рдорд╛рдЭреНрдпрд╛рдХрдбреЗ рд╕рдореБрджрд╛рдп 2019 рдЖрд╡реГрддреНрддреА рдЖрд╣реЗ. рдЖрдгрд┐ рд╣реЛ - рд░рд╢рд┐рдпрди рднрд╛рд╖реЗрдд) рдЖрдгрд┐ рдПрдХ рдирд╡реАрди рд╕рдорд╛рдзрд╛рди рддрдпрд╛рд░ рдХрд░реВ. рдЪрд▓рд╛ рддреНрдпрд╛рд▓рд╛ рдХреЙрд▓ рдХрд░реВрдпрд╛ MySuperPluginForRevit

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЖрдореНтАНрд╣реА 2015-2020 рдЖрд╡реГрддреНтАНрддреАрдВрд╕рд╛рдареА Revit рд╕рд╛рдареА рдПрдХ рдкреНрд▓рдЧрдЗрди рддрдпрд╛рд░ рдХрд░рдгрд╛рд░ рдЖрд╣реЛрдд. рдореНрд╣рдгреВрди, рд╕реЛрд▓реНрдпреВрд╢рдирдордзреНрдпреЗ (рдиреЗрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреНрд▓рд╛рд╕ рд▓рд╛рдпрдмреНрд░рд░реА) рдПрдХ рдирд╡реАрди рдкреНрд░рдХрд▓реНрдк рддрдпрд╛рд░ рдХрд░реВ рдЖрдгрд┐ рддреНрдпрд╛рд╕ рдХреЙрд▓ рдХрд░реВ MySuperPluginForRevit_2015

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЖрдореНрд╣рд╛рд▓рд╛ Revit API рдордзреНрдпреЗ рд▓рд┐рдВрдХ рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ. рдЕрд░реНрдерд╛рдд, рдЖрдореНрд╣реА рд╕реНрдерд╛рдирд┐рдХ рдлрд╛рдпрд▓реАрдВрдордзреНрдпреЗ рджреБрд╡реЗ рдЬреЛрдбреВ рд╢рдХрддреЛ (рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд░реНрд╡ рдЖрд╡рд╢реНрдпрдХ SDKs рдХрд┐рдВрд╡рд╛ Revit рдЪреНрдпрд╛ рд╕рд░реНрд╡ рдЖрд╡реГрддреНрддреНрдпрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ), рдкрд░рдВрддреБ рдЖрдореНрд╣реА рддреНрд╡рд░рд┐рдд рдпреЛрдЧреНрдп рдорд╛рд░реНрдЧрд╛рдЪреЗ рдЕрдиреБрд╕рд░рдг рдХрд░реВ рдЖрдгрд┐ NuGet рдкреЕрдХреЗрдЬ рдХрдиреЗрдХреНрдЯ рдХрд░реВ. рддреБрдореНрд╣рд╛рд▓рд╛ рдмрд░реАрдЪ рдкреЕрдХреЗрдЬреЗрд╕ рд╕рд╛рдкрдбрддреАрд▓, рдкрдг рдореА рд╕реНрд╡рддрдГрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реЗрди.

рдкреЕрдХреЗрдЬ рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, рдЖрдпрдЯрдорд╡рд░ рдЙрдЬрд╡реЗ-рдХреНрд▓рд┐рдХ рдХрд░рд╛ тАЬрд╕рдВрджрд░реНрдн"рдЖрдгрд┐ рдЖрдпрдЯрдо рдирд┐рд╡рдбрд╛"PackageReference рд╡рд░ packages.config рд╣рд▓рд╡рд╛...┬╗

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЬрд░ рдЕрдЪрд╛рдирдХ рдпрд╛ рдЯрдкреНрдкреНрдпрд╛рд╡рд░ рддреБрдореНрд╣реА рдШрд╛рдмрд░реВ рд▓рд╛рдЧрд▓рд╛рдд, рдХрд╛рд░рдг рдкреЕрдХреЗрдЬ рдЧреБрдгрдзрд░реНрдо рд╡рд┐рдВрдбреЛрдордзреНрдпреЗ рдХреЛрдгрддреАрд╣реА рдорд╣рддреНрддреНрд╡рд╛рдЪреА рд╡рд╕реНрддреВ рдирд╕реЗрд▓.рд╕реНрдерд╛рдирд┐рдХ рдХреЙрдкреА рдХрд░рд╛", рдЬреЗ рдЖрдореНрд╣рд╛рд▓рд╛ рдирд┐рд╢реНрдЪрд┐рддрдкрдгреЗ рдореВрд▓реНрдпрд╛рд╡рд░ рд╕реЗрдЯ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдЦреЛрдЯреЗ, рдирдВрддрд░ рдШрд╛рдмрд░реВ рдирдХрд╛ - рдкреНрд░рдХрд▓реНрдкрд╛рд╕рд╣ рдлреЛрд▓реНрдбрд░рд╡рд░ рдЬрд╛, рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА рд╕реЛрдпреАрд╕реНрдХрд░ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рдВрдкрд╛рджрдХрд╛рдордзреНрдпреЗ .csproj рд╡рд┐рд╕реНрддрд╛рд░рд╛рд╕рд╣ рдлрд╛рдЗрд▓ рдЙрдШрдбрд╛ (рдореА Notepad++ рд╡рд╛рдкрд░рддреЛ) рдЖрдгрд┐ рддреЗрдереЗ рдЖрдордЪреНрдпрд╛ рдкреЕрдХреЗрдЬрдмрджреНрджрд▓ рдПрдВрдЯреНрд░реА рд╢реЛрдзрд╛. рддреА рдЖрддрд╛ рдЕрд╢реА рджрд┐рд╕рддреЗ:

<PackageReference Include="ModPlus.Revit.API.2015">
  <Version>1.0.0</Version>
</PackageReference>

рддреНрдпрд╛рдд рдПрдХ рдорд╛рд▓рдорддреНрддрд╛ рдЬреЛрдбрд╛ рд░рдирдЯрд╛рдЗрдо. рд╣реЗ рдЕрд╕реЗ рд╣реЛрдИрд▓:

<PackageReference Include="ModPlus.Revit.API.2015">
  <Version>1.0.0</Version>
  <ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>

рдЖрддрд╛, рдкреНрд░рдХрд▓реНрдк рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛, рдкреЕрдХреЗрдЬрдордзреАрд▓ рдлрд╛рдпрд▓реА рдЖрдЙрдЯрдкреБрдЯ рдлреЛрд▓реНрдбрд░рдордзреНрдпреЗ рдХреЙрдкреА рдХреЗрд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░ рдирд╛рд╣реАрдд.
рдЪрд▓рд╛ рдкреБрдвреЗ рдЬрд╛рдКрдпрд╛ - рдЖрдкрдг рддрд╛рдмрдбрддреЛрдм рдХрд▓реНрдкрдирд╛ рдХрд░реВрдпрд╛ рдХреА рдЖрдордЪреЗ рдкреНрд▓рдЧрдЗрди Revit API рдордзреВрди рдХрд╛рд╣реАрддрд░реА рд╡рд╛рдкрд░реЗрд▓, рдЬреЗ рдирд╡реАрди рдЖрд╡реГрддреНрддреНрдпрд╛ рд░рд┐рд▓реАрдЭ рдЭрд╛рд▓реНрдпрд╛рд╡рд░ рдХрд╛рд│рд╛рдиреБрд╕рд╛рд░ рдмрджрд▓рд▓реЗ рдЖрд╣реЗ. рдмрд░рдВ, рдХрд┐рдВрд╡рд╛ рдЖрдореНрд╣реА рдЬреНрдпрд╛рд╕рд╛рдареА рдкреНрд▓рдЧрдЗрди рдмрдирд╡рдд рдЖрд╣реЛрдд рддреНрдпрд╛ Revit рдЪреНрдпрд╛ рдЖрд╡реГрддреНрддреАрдиреБрд╕рд╛рд░ рдЖрдореНрд╣рд╛рд▓рд╛ рдХреЛрдбрдордзреНрдпреЗ рдХрд╛рд╣реАрддрд░реА рдмрджрд▓рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдЖрд╣реЗ. рдХреЛрдбрдордзреАрд▓ рдЕрд╢рд╛ рдлрд░рдХрд╛рдВрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЪрд┐рдиреНрд╣реЗ рд╡рд╛рдкрд░реВ. рдкреНрд░рдХрд▓реНрдк рдЧреБрдгрдзрд░реНрдо рдЙрдШрдбрд╛, "рдЯреЕрдмрд╡рд░ рдЬрд╛рдЕрд╕реЗрдВрдмреНрд▓реА"рдЖрдгрд┐ рд╢реЗрддрд╛рдд"рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдиреЛрдЯреЗрд╢рди"рдЪрд▓рд╛ рд▓рд┐рд╣реВ рдпрд╛ R2015.

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛ рдХреА рдбреАрдмрдЧ рдЖрдгрд┐ рд░рд┐рд▓реАрдЭ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╛рдареА рдЪрд┐рдиреНрд╣ рдЬреЛрдбрд▓реЗ рдЬрд╛рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдмрд░рдВ, рдЬреЗрд╡реНрд╣рд╛ рдЖрдкрдг рдЧреБрдгрдзрд░реНрдо рд╡рд┐рдВрдбреЛрдордзреНрдпреЗ рдЕрд╕рддреЛ, рддреЗрд╡реНрд╣рд╛ рдЖрдкрдг рддрд╛рдмрдбрддреЛрдм " рдЯреЕрдмрд╡рд░ рдЬрд╛рддреЛрдЕрдиреБрдкреНрд░рдпреЛрдЧ"рдЖрдгрд┐ рд╢реЗрддрд╛рдд"рдбреАрдлреЙрд▓реНрдЯ рдиреЗрдорд╕реНрдкреЗрд╕┬╗ рдкреНрд░рддреНрдпрдп рдХрд╛рдврд╛ _2015рдЬреЗрдгреЗрдХрд░реВрди рдЖрдордЪреЗ рдиреЗрдорд╕реНрдкреЗрд╕ рд╕рд╛рд░реНрд╡рддреНрд░рд┐рдХ рдЖрдгрд┐ рдЕрд╕реЗрдВрдмрд▓реАрдЪреНрдпрд╛ рдирд╛рд╡рд╛рдкреЗрдХреНрд╖рд╛ рд╕реНрд╡рддрдВрддреНрд░ рдЕрд╕реЗрд▓:

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдорд╛рдЭреНрдпрд╛ рдмрд╛рдмрддреАрдд, рдЕрдВрддрд┐рдо рдЙрддреНрдкрд╛рджрдирд╛рдордзреНрдпреЗ, рд╕рд░реНрд╡ рдЖрд╡реГрддреНрддреНрдпрд╛рдВрдЪреЗ рдкреНрд▓рдЧрдЗрди рдПрдХрд╛ рдлреЛрд▓реНрдбрд░рдордзреНрдпреЗ рдареЗрд╡рд▓реЗ рдЬрд╛рддрд╛рдд, рддреНрдпрд╛рдореБрд│реЗ рдорд╛рдЭреА рдЕрд╕реЗрдВрдмрд▓реА рдирд╛рд╡реЗ рдлреЙрд░реНрдордЪреНрдпрд╛ рдкреНрд░рддреНрдпрдпрд╛рд╕рд╣ рд░рд╛рд╣рддреАрд▓. _20╤Е╤Е. рдкрд░рдВрддреБ рдлрд╛рдпрд▓реА рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдлреЛрд▓реНрдбрд░реНрд╕рдордзреНрдпреЗ рд╕реНрдерд┐рдд рдЕрд╕рд▓реНтАНрдпрд╛рдЪреЗ рд╡рд╛рдЯрдд рдЕрд╕рд▓реНтАНрдпрд╛рд╕ рддреБрдореНрд╣реА рдЕрд╕реЗрдВрдмрд▓реАрдЪреНрдпрд╛ рдирд╛рд╡рд╛рддреВрди рдкреНрд░рддреНрдпрдп рджреЗрдЦреАрд▓ рдХрд╛рдвреВ рд╢рдХрддрд╛.

рдЪрд▓рд╛ рдлрд╛рдИрд▓ рдХреЛрдб рд╡рд░ рдЬрд╛рдКрдпрд╛ Class1.cs рдЖрдгрд┐ рддреЗрдереЗ рдХрд╛рд╣реА рдХреЛрдбрдЪреЗ рдЕрдиреБрдХрд░рдг рдХрд░рд╛, Revit рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛ рд▓рдХреНрд╖рд╛рдд рдШреЗрдКрди:

namespace MySuperPluginForRevit
{
    using Autodesk.Revit.Attributes;
    using Autodesk.Revit.DB;
    using Autodesk.Revit.UI;

    [Regeneration(RegenerationOption.Manual)]
    [Transaction(TransactionMode.Manual)]
    public class Class1 : IExternalCommand
    {
        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
        {
#if R2015
            TaskDialog.Show("ModPlus", "Hello Revit 2015");
#elif R2016
            TaskDialog.Show("ModPlus", "Hello Revit 2016");
#elif R2017
            TaskDialog.Show("ModPlus", "Hello Revit 2017");
#elif R2018
            TaskDialog.Show("ModPlus", "Hello Revit 2018");
#elif R2019
            TaskDialog.Show("ModPlus", "Hello Revit 2019");
#elif R2020
            TaskDialog.Show("ModPlus", "Hello Revit 2020");
#endif
            return Result.Succeeded;
        }
    }
}

рдореА рд╡рд░реАрд▓ рдЖрд╡реГрддреНрддреА 2015 рдЪреНрдпрд╛ Revit рдЪреНрдпрд╛ рд╕рд░реНрд╡ рдЖрд╡реГрддреНрддреНрдпрд╛ рддрд╛рдмрдбрддреЛрдм рд╡рд┐рдЪрд╛рд░рд╛рдд рдШреЗрддрд▓реНрдпрд╛ (рдЬреНрдпрд╛ рд▓реЗрдЦрдирд╛рдЪреНрдпрд╛ рд╡реЗрд│реА рдЙрдкрд▓рдмреНрдз рд╣реЛрддреНрдпрд╛) рдЖрдгрд┐ рддреНрдпрд╛рдЪ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╡рд╛рдкрд░реВрди рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЪрд┐рдиреНрд╣рд╛рдВрдЪреА рдЙрдкрд╕реНрдерд┐рддреА рд▓рдЧреЗрдЪ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд▓реА.

рдЪрд▓рд╛ рдореБрдЦреНрдп рд╣рд╛рдпрд▓рд╛рдЗрдЯрдХрдбреЗ рдЬрд╛рдКрдпрд╛. рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рд╕реЛрд▓реНрдпреВрд╢рдирдордзреНрдпреЗ рдПрдХ рдирд╡реАрди рдкреНрд░рдХрд▓реНрдк рддрдпрд╛рд░ рдХрд░рддреЛ, рдлрдХреНрдд Revit 2016 рд╕рд╛рдареА рдкреНрд▓рдЧрдЗрдирдЪреНрдпрд╛ рдЖрд╡реГрддреНрддреАрд╕рд╛рдареА. рдЖрдореНрд╣реА рд╡рд░ рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдЪрд░рдгрд╛рдВрдЪреА рдкреБрдирд░рд╛рд╡реГрддреНрддреА рдХрд░рддреЛ, рдЕрдиреБрдХреНрд░рдореЗ 2015 рдЪреА рд╕рдВрдЦреНрдпрд╛ 2016 рдиреЗ рдкреБрдирд░реНрд╕реНрдерд┐рдд рдХрд░рддреЛ. рдкрд░рдВрддреБ рдлрд╛рдЗрд▓ Class1.cs рдирд╡реАрди рдкреНрд░рдХрд▓реНрдкрд╛рддреВрди рд╣рдЯрд╡рд╛.

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЖрд╡рд╢реНрдпрдХ рдХреЛрдбрд╕рд╣ рдлрд╛рдЗрд▓ рдХрд░рд╛ - Class1.cs - рдЖрдордЪреНрдпрд╛рдХрдбреЗ рддреЗ рдЖрдзреАрдЪ рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рдирд╡реАрди рдкреНрд░рдХрд▓реНрдкрд╛рдд рддреНрдпрд╛рдЪреА рд▓рд┐рдВрдХ рдЯрд╛рдХрд╛рдпрдЪреА рдЖрд╣реЗ. рджреБрд╡реЗ рдШрд╛рд▓рдгреНрдпрд╛рдЪреЗ рджреЛрди рдорд╛рд░реНрдЧ рдЖрд╣реЗрдд:

  1. рд▓рд╛рдВрдм - рдкреНрд░рдХрд▓реНрдкрд╛рд╡рд░ рдЙрдЬрд╡реЗ-рдХреНрд▓рд┐рдХ рдХрд░рд╛ рдЖрдгрд┐ рдирд┐рд╡рдбрд╛ "рдЬреЛрдбрд╛->рд╡рд┐рджреНрдпрдорд╛рди рдШрдЯрдХ", рдЙрдШрдбрдгрд╛рд▒реНрдпрд╛ рд╡рд┐рдВрдбреЛрдордзреНрдпреЗ, рдЖрд╡рд╢реНрдпрдХ рдлрд╛рдЗрд▓ рд╢реЛрдзрд╛ рдЖрдгрд┐ рдкрд░реНрдпрд╛рдпрд╛рдРрд╡рдЬреА "рдЬреЛрдбрд╛"рдкрд░реНрдпрд╛рдп рдирд┐рд╡рдбрд╛"рдХрдиреЗрдХреНрд╢рди рдореНрд╣рдгреВрди рдЬреЛрдбрд╛┬╗

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

  1. рд▓рд╣рд╛рди - рдереЗрдЯ рд╕реЛрд▓реНрдпреВрд╢рди рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░рдордзреНрдпреЗ, рдЗрдЪреНрдЫрд┐рдд рдлрд╛рдЗрд▓ (рдХрд┐рдВрд╡рд╛ рдЕрдЧрджреА рдлрд╛рдЗрд▓реНрд╕, рдХрд┐рдВрд╡рд╛ рдЕрдЧрджреА рд╕рдВрдкреВрд░реНрдг рдлреЛрд▓реНрдбрд░реНрд╕) рдирд┐рд╡рдбрд╛ рдЖрдгрд┐ Alt рдХреА рджрд╛рдмреВрди рдареЗрд╡реВрди рдирд╡реАрди рдкреНрд░реЛрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рдбреНрд░реЕрдЧ рдХрд░рд╛. рдЬрд╕реЗ рддреБрдореНрд╣реА рдбреНрд░реЕрдЧ рдХрд░рд╛рд▓, рддреБрдореНрд╣рд╛рд▓рд╛ рджрд┐рд╕реЗрд▓ рдХреА рддреБрдореНрд╣реА Alt рдХреА рджрд╛рдмрд╛рд▓ рддреЗрд╡реНрд╣рд╛ рдорд╛рдЙрд╕ рдХрд░реНрд╕рд░ рдкреНрд▓рд╕ рдЪрд┐рдиреНрд╣рд╛рд╡рд░реВрди рдмрд╛рдгрд╛рд╡рд░ рдмрджрд▓реЗрд▓.
    рдпреВрдкреАрдПрд╕: рдореА рдпрд╛ рдкрд░рд┐рдЪреНрдЫреЗрджрд╛рдд рдереЛрдбрд╛ рдЧреЛрдВрдзрд│ рдХреЗрд▓рд╛ - рдЕрдиреЗрдХ рдлрд╛рдИрд▓реНрд╕ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреБрдореНрд╣реА рджрд╛рдмреВрди рдареЗрд╡рд╛рд╡реЗ Shift + Alt!

рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкрд╛рд░ рдкрд╛рдбрд▓реНрдпрд╛рдирдВрддрд░, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рджреБрд╕рд░реНтАНрдпрд╛ рдкреНрд░рдХрд▓реНрдкрд╛рдд рдлрд╛рдЗрд▓ рдЕрд╕реЗрд▓ Class1.cs рд╕рдВрдмрдВрдзрд┐рдд рдЪрд┐рдиреНрд╣рд╛рд╕рд╣ (рдирд┐рд│рд╛ рдмрд╛рдг):

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдПрдбрд┐рдЯрд░ рд╡рд┐рдВрдбреЛрдордзреНрдпреЗ рдХреЛрдб рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддрд╛рдирд╛, рддреБрдореНрд╣реА рдХреЛрдгрддреНрдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рдВрджрд░реНрднрд╛рдордзреНрдпреЗ рдХреЛрдб рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рд╛рдпрдЪрд╛ рд╣реЗ рджреЗрдЦреАрд▓ рдирд┐рд╡рдбреВ рд╢рдХрддрд╛, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЪрд┐рдиреНрд╣рд╛рдВрдЦрд╛рд▓реА рд╕рдВрдкрд╛рджрд┐рдд рдХреЗрд▓реЗрд▓рд╛ рдХреЛрдб рдкрд╛рд╣рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрдИрд▓:

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЖрдореНрд╣реА рд╣реА рдпреЛрдЬрдирд╛ рд╡рд╛рдкрд░реВрди рдЗрддрд░ рд╕рд░реНрд╡ рдкреНрд░рдХрд▓реНрдк (2017-2020) рддрдпрд╛рд░ рдХрд░рддреЛ. рд▓рд╛рдЗрдл рд╣реЕрдХ - рдЬрд░ рддреБрдореНрд╣реА рд╕реЛрд▓реНрдпреВрд╢рди рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░рдордзреНрдпреЗ рдлрд╛рдпрд▓реА рдмреЗрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯрдордзреВрди рдирд╛рд╣реА рддрд░ рддреНрдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯрдордзреВрди рдбреНрд░реЕрдЧ рдХреЗрд▓реНрдпрд╛рдд рдЬрд┐рдереЗ рддреНрдпрд╛ рдЖрдзреАрдЪ рд▓рд┐рдВрдХ рдореНрд╣рдгреВрди рдЯрд╛рдХрд▓реНрдпрд╛ рдЧреЗрд▓реНрдпрд╛ рдЕрд╕рддреАрд▓, рддрд░ рддреБрдореНрд╣рд╛рд▓рд╛ Alt рдХреА рджрд╛рдмреВрди рдареЗрд╡рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдирд╛рд╣реА!

рдкреНрд▓рдЧрдЗрдирдЪреА рдирд╡реАрди рдЖрд╡реГрддреНрддреА рдЬреЛрдбрдгреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд╖рдгрд╛рдкрд░реНрдпрдВрдд рдХрд┐рдВрд╡рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рдирд╡реАрди рдлрд╛рдпрд▓реА рдЬреЛрдбрдгреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд╖рдгрд╛рдкрд░реНрдпрдВрдд рд╡рд░реНрдгрд┐рдд рдкрд░реНрдпрд╛рдп рдЪрд╛рдВрдЧрд▓рд╛ рдЖрд╣реЗ - рд╣реЗ рд╕рд░реНрд╡ рдЦреВрдк рдХрдВрдЯрд╛рд│рд╡рд╛рдгреЗ рд╣реЛрддреЗ. рдЖрдгрд┐ рдЕрд▓реАрдХрдбреЗрдЪ рдПрдХрд╛ рдкреНрд░рдХрд▓реНрдкрд╛рдд рд╣реЗ рд╕рд░реНрд╡ рдХрд╕реЗ рд╕реЛрдбрд╡рд╛рдпрдЪреЗ рд╣реЗ рдорд▓рд╛ рдЕрдЪрд╛рдирдХ рдХрд│рд▓реЗ рдЖрдгрд┐ рдЖрдореНрд╣реА рджреБрд╕рд▒реНрдпрд╛ рдкрджреНрдзрддреАрдХрдбреЗ рдЬрд╛рдд рдЖрд╣реЛрдд.

рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдЪреА рдЬрд╛рджреВ

рдпреЗрдереЗ рд╡рд╛рдЪрди рдкреВрд░реНрдг рдХреЗрд▓реНрдпрд╛рд╡рд░, рддреБрдореНрд╣реА рдЙрджреНрдЧрд╛рд░ рдХрд╛рдвреВ рд╢рдХрддрд╛, "рдЬрд░ рд▓реЗрдЦ рд▓рдЧреЗрдЪ рджреБрд╕рд▒реНрдпрд╛ рдмрджреНрджрд▓ рдЕрд╕реЗрд▓ рддрд░ рддреБрдореНрд╣реА рдкрд╣рд┐рд▓реНрдпрд╛ рдкрджреНрдзрддреАрдЪреЗ рд╡рд░реНрдгрди рдХрд╛ рдХреЗрд▓реЗ?!" рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЪрд┐рдиреНрд╣рд╛рдВрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдордЪреЗ рдкреНрд░рдХрд▓реНрдк рдХреЛрдгрддреНрдпрд╛ рдард┐рдХрд╛рдгреА рд╡реЗрдЧрд│реЗ рдЖрд╣реЗрдд рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдореА рд╕рд░реНрд╡рдХрд╛рд╣реА рд╡рд░реНрдгрди рдХреЗрд▓реЗ рдЖрд╣реЗ. рдЖрдгрд┐ рдЖрддрд╛ рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдЭрд╛рд▓реЗ рдЖрд╣реЗ рдХреА рдлрдХреНрдд рдПрдХ рдкреНрд░рдХрд▓реНрдк рд╕реЛрдбреВрди, тАЛтАЛрдЖрдореНрд╣рд╛рд▓рд╛ рдХреЛрдгрддреНрдпрд╛ рдкреНрд░рдХрд▓реНрдкрд╛рдВрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХрд░рд╛рдпрдЪреА рдЖрд╣реЗ.

рдЖрдгрд┐ рд╕рд░реНрд╡ рдХрд╛рд╣реА рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рдирд╡реАрди рдкреНрд░рдХрд▓реНрдк рддрдпрд╛рд░ рдХрд░рдгрд╛рд░ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдкреНрд░рдердо рдорд╛рд░реНрдЧрд╛рдиреЗ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЖрдордЪреНрдпрд╛ рд╡рд░реНрддрдорд╛рди рдкреНрд░рдХрд▓реНрдкрд╛рдд рдмрджрд▓ рдХрд░реВ.

рдореНрд╣рдгреВрди, рд╕рд░реНрд╡ рдкреНрд░рдердо, рдЖрдореНрд╣реА рдореБрдЦреНрдп рдкреНрд░рдХрд▓реНрдк рд╡рдЧрд│рддрд╛ рд╕рд░реНрд╡ рдкреНрд░рдХрд▓реНрдк рд╕реЛрд▓реНрдпреВрд╢рдирдордзреВрди рдХрд╛рдвреВрди рдЯрд╛рдХрддреЛ (рдереЗрдЯ рдлрд╛рдпрд▓реА рдЕрд╕рддрд╛рдд). рддреНрдпрд╛. 2016-2020 рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рдкреНрд░рдХрд▓реНрдк. рд╕реЛрд▓реНрдпреВрд╢рдирд╕рд╣ рдлреЛрд▓реНрдбрд░ рдЙрдШрдбрд╛ рдЖрдгрд┐ рддреЗрдереЗ рдпрд╛ рдкреНрд░рдХрд▓реНрдкрд╛рдВрдЪреЗ рдлреЛрд▓реНрдбрд░ рд╣рдЯрд╡рд╛.

рдЖрдордЪреНрдпрд╛ рдирд┐рд░реНрдгрдпрд╛рдд рдПрдХ рдкреНрд░рдХрд▓реНрдк рд╢рд┐рд▓реНрд▓рдХ рдЖрд╣реЗ - MySuperPluginForRevit_2015. рддреНрдпрд╛рдЪреЗ рдЧреБрдгрдзрд░реНрдо рдЙрдШрдбрд╛ рдЖрдгрд┐:

  1. рдЯреЕрдмрд╡рд░ "рдЕрдиреБрдкреНрд░рдпреЛрдЧрдЕрд╕реЗрдВрдмрд▓реАрдЪреНрдпрд╛ рдирд╛рд╡рд╛рддреВрди рдкреНрд░рддреНрдпрдп рдХрд╛рдвреВрди рдЯрд╛рдХрд╛ _2015 (рдХрд╛ рддреЗ рдирдВрддрд░ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдИрд▓)
  2. рдЯреЕрдмрд╡рд░ "рдЕрд╕реЗрдВрдмреНрд▓реА┬╗ рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЪрд┐рдиреНрд╣ рдХрд╛рдврд╛ R2015 рд╕рдВрдмрдВрдзрд┐рдд рдХреНрд╖реЗрддреНрд░рд╛рддреВрди

рдЯреАрдк: рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУрдЪреНрдпрд╛ рдирд╡реАрдирддрдо рдЖрд╡реГрддреНрддреАрдордзреНрдпреЗ рдПрдХ рдмрдЧ рдЖрд╣реЗ - рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЪрд┐рдиреНрд╣реЗ рдЙрдкрд▓рдмреНрдз рдЕрд╕рд▓реА рддрд░реАрд╣реА рдкреНрд░рдХрд▓реНрдк рдЧреБрдгрдзрд░реНрдо рд╡рд┐рдВрдбреЛрдордзреНрдпреЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреЗрд▓реА рдЬрд╛рдд рдирд╛рд╣реАрдд. рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд╣реА рдЕрдбрдЪрдг рдпреЗрдд рдЕрд╕реЗрд▓, рддрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рддреА .csproj рдлрд╛рдЗрд▓рдордзреВрди рд╡реНрдпрдХреНрддрд┐рдЪрд▓рд┐рддрдкрдгреЗ рдХрд╛рдвреВрди рдЯрд╛рдХрд╛рд╡реА рд▓рд╛рдЧрддреАрд▓. рддрдерд╛рдкрд┐, рдЖрдореНрд╣рд╛рд▓рд╛ рдЕрджреНрдпрд╛рдк рддреНрдпрд╛рдд рдХрд╛рдо рдХрд░рд╛рдпрдЪреЗ рдЖрд╣реЗ, рдореНрд╣рдгреВрди рд╡рд╛рдЪрд╛.

рд╕реЛрд▓реНрдпреВрд╢рди рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рд╡рд┐рдВрдбреЛрдордзреНрдпреЗ рдкреНрд░рддреНрдпрдп рдХрд╛рдвреВрди рдкреНрд░рдХрд▓реНрдкрд╛рдЪреЗ рдирд╛рд╡ рдмрджрд▓рд╛ _2015 рдЖрдгрд┐ рдирдВрддрд░ рд╕реЛрд▓реНрдпреВрд╢рдирдордзреВрди рдкреНрд░рдХрд▓реНрдк рдХрд╛рдврд╛. рд╕реБрд╡реНрдпрд╡рд╕реНрдерд╛ рд░рд╛рдЦрдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдкрд░рд┐рдкреВрд░реНрдгрддрд╛рд╡рд╛рджреНрдпрд╛рдВрдЪреНрдпрд╛ рднрд╛рд╡рдирд╛ рд░рд╛рдЦрдгреНрдпрд╛рд╕рд╛рдареА рд╣реЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ! рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рд╕реЛрд▓реНрдпреВрд╢рдирдЪреЗ рдлреЛрд▓реНрдбрд░ рдЙрдШрдбрддреЛ, рддреНрдпрд╛рдЪ рдкреНрд░рдХрд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлреЛрд▓реНрдбрд░рдЪреЗ рдирд╛рд╡ рдмрджрд▓рддреЛ рдЖрдгрд┐ рдкреНрд░рдХрд▓реНрдк рдкреБрдиреНрд╣рд╛ рд╕реЛрд▓реНрдпреВрд╢рдирдордзреНрдпреЗ рд▓реЛрдб рдХрд░рддреЛ.

рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЙрдШрдбрд╛. рдпреВрдПрд╕ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдкреНрд░рдХрд╛рд╢рди рддрддреНрд╡рддрдГ, рддреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА, рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рддреЗ рд╣рдЯрд╡рддреЛ. рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдзреАрдЪ рдкрд░рд┐рдЪрд┐рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдирд╛рд╡рд╛рдВрд╕рд╣ рдЖрдореНрд╣реА рдирд╡реАрди рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рддрдпрд╛рд░ рдХрд░рддреЛ R2015, R2016,..., R2020. рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛ рдХреА рддреБрдореНрд╣рд╛рд▓рд╛ рдЗрддрд░ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдордзреВрди рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рдХреЙрдкреА рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА:

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдкреНрд░реЛрдЬреЗрдХреНрдЯрд╕рд╣ рдлреЛрд▓реНрдбрд░рд╡рд░ рдЬрд╛ рдЖрдгрд┐ .csproj рд╡рд┐рд╕реНрддрд╛рд░рд╛рд╕рд╣ рдлрд╛рдЗрд▓ рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА рд╕реЛрдпреАрд╕реНрдХрд░ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рдВрдкрд╛рджрдХрд╛рдордзреНрдпреЗ рдЙрдШрдбрд╛. рддрд╕реЗ, рдЖрдкрдг рддреЗ рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУрдордзреНрдпреЗ рджреЗрдЦреАрд▓ рдЙрдШрдбреВ рд╢рдХрддрд╛ - рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдкреНрд░рдХрд▓реНрдк рдЕрдирд▓реЛрдб рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рдЖрдгрд┐ рдирдВрддрд░ рдЗрдЪреНрдЫрд┐рдд рдЖрдпрдЯрдо рд╕рдВрджрд░реНрдн рдореЗрдиреВрдордзреНрдпреЗ рдЕрд╕реЗрд▓:

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУрдордзреНрдпреЗ рд╕рдВрдкрд╛рджрди рдХрд░рдгреЗ рдЕрдзрд┐рдХ рд╢реНрд░реЗрдпрд╕реНрдХрд░ рдЖрд╣реЗ, рдХрд╛рд░рдг рд╕рдВрдкрд╛рджрдХ рджреЛрдиреНрд╣реА рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░рддреЛ рдЖрдгрд┐ рд╕реВрдЪрд┐рдд рдХрд░рддреЛ.

рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдЖрдкрдг рдШрдЯрдХ рдкрд╛рд╣реВ рдорд╛рд▓рдорддреНрддрд╛ рдЧрдЯ - рдЕрдЧрджреА рд╢реАрд░реНрд╖рд╕реНрдерд╛рдиреА рд╕рд╛рдорд╛рдиреНрдп рдЖрд╣реЗ рдЖрдгрд┐ рдирдВрддрд░ рдкрд░рд┐рд╕реНрдерд┐рддреА рдпреЗрддреЗ. рд╣реЗ рдШрдЯрдХ рдкреНрд░рдХрд▓реНрдк рдмрд╛рдВрдзрд▓реНрдпрд╛рд╡рд░ рддреНрдпрд╛рдЪреЗ рдЧреБрдгрдзрд░реНрдо рд╕реЗрдЯ рдХрд░рддрд╛рдд. рдкрд╣рд┐рд▓рд╛ рдШрдЯрдХ, рдЬреЛ рдЕрдЯреАрдВрд╢рд┐рд╡рд╛рдп рдЖрд╣реЗ, рд╕рд╛рдорд╛рдиреНрдп рдЧреБрдгрдзрд░реНрдо рд╕реЗрдЯ рдХрд░рддреЛ рдЖрдгрд┐ рдкрд░рд┐рд╕реНрдерд┐рддреАрд╕рд╣ рдШрдЯрдХ, рддреНрдпрд╛рдиреБрд╕рд╛рд░, рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдХрд╛рд╣реА рдЧреБрдгрдзрд░реНрдо рдмрджрд▓рддреЛ.

рд╕рд╛рдорд╛рдиреНрдп (рдкреНрд░рдердо) рдШрдЯрдХрд╛рд╡рд░ рдЬрд╛ рдорд╛рд▓рдорддреНрддрд╛ рдЧрдЯ рдЖрдгрд┐ рдорд╛рд▓рдорддреНрддрд╛ рдкрд╣рд╛ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдирд╛рд╡ - рд╣реЗ рдЕрд╕реЗрдВрдмреНрд▓реАрдЪреЗ рдирд╛рд╡ рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдкрд▓реНрдпрд╛рдХрдбреЗ рддреЗ рдкреНрд░рддреНрдпрдп рд╢рд┐рд╡рд╛рдп рдЕрд╕рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ _2015. рдкреНрд░рддреНрдпрдп рдЕрд╕реЗрд▓ рддрд░ рдХрд╛рдвреВрди рдЯрд╛рдХрд╛.

рдЕрдЯреАрд╕рд╣ рдШрдЯрдХ рд╢реЛрдзрдгреЗ

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">

рдЖрдореНрд╣рд╛рд▓рд╛ рддреНрдпрд╛рдЪреА рдЧрд░рдЬ рдирд╛рд╣реА - рдЖрдореНрд╣реА рддреЗ рд╣рдЯрд╡рддреЛ.

рд╕реНрдерд┐рддреАрд╕рд╣ рдШрдЯрдХ

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">

рдХреЛрдб рдбреЗрд╡реНрд╣рд▓рдкрдореЗрдВрдЯ рдЖрдгрд┐ рдбреАрдмрдЧрд┐рдВрдЧрдЪреНрдпрд╛ рдЯрдкреНрдкреНрдпрд╛рд╡рд░ рдХрд╛рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрд╡рд╢реНрдпрдХ рдЕрд╕реЗрд▓. рддреБрдореНрд╣реА рддреБрдордЪреНрдпрд╛ рдЧрд░рдЬреЗрдиреБрд╕рд╛рд░ рддреНрдпрд╛рдЪреЗ рдЧреБрдгрдзрд░реНрдо рдмрджрд▓реВ рд╢рдХрддрд╛ - рднрд┐рдиреНрди рдЖрдЙрдЯрдкреБрдЯ рдорд╛рд░реНрдЧ рд╕реЗрдЯ рдХрд░рд╛, рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЪрд┐рдиреНрд╣реЗ рдмрджрд▓рд╛ рдЗ.

рдЖрддрд╛ рдирд╡реАрди рдШрдЯрдХ рддрдпрд╛рд░ рдХрд░реВрдпрд╛ рдорд╛рд▓рдорддреНрддрд╛ рдЧрдЯ рдЖрдордЪреНрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╛рдареА. рдпрд╛ рдШрдЯрдХрд╛рдВрдордзреНрдпреЗ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдлрдХреНрдд рдЪрд╛рд░ рдЧреБрдгрдзрд░реНрдо рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ:

  • рдЖрдЙрдЯрдкреБрдЯрдкрде - рдЖрдЙрдЯрдкреБрдЯ рдлреЛрд▓реНрдбрд░. рдореА рдбреАрдлреЙрд▓реНрдЯ рдореВрд▓реНрдп рд╕реЗрдЯ рдХреЗрд▓реЗ рдЖрд╣реЗ binR20xx
  • Constants рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рд╛ - рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдЪрд┐рдиреНрд╣реЗ. рдореВрд▓реНрдп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ рдЯреНрд░реЗрд╕;R20╤Е╤Е
  • рд▓рдХреНрд╖реНрдп рдлреНрд░реЗрдорд╡рд░реНрдХ рдЖрд╡реГрддреНрддреА - рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдЖрд╡реГрддреНрддреА. Revit API рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рднрд┐рдиреНрди рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
  • рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдирд╛рд╡ - рдЕрд╕реЗрдВрдмреНрд▓реАрдЪреЗ рдирд╛рд╡ (рдореНрд╣рдгрдЬреЗ рдлрд╛рдЗрд▓ рдирд╛рд╡). рдЖрдкрдг рдЕрд╕реЗрдВрдмрд▓реАрдЪреЗ рдЕрдЪреВрдХ рдирд╛рд╡ рд▓рд┐рд╣реВ рд╢рдХрддрд╛, рдкрд░рдВрддреБ рдмрд╣реБрдореБрдЦреАрдкрдгрд╛рд╕рд╛рдареА рдореА рдореВрд▓реНрдп рд▓рд┐рд╣рд┐рдгреНрдпрд╛рдЪреА рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рддреЛ $(AssemblyName)_20╤Е╤Е. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рдкреВрд░реНрд╡реА рдЕрд╕реЗрдВрдмрд▓реАрдЪреНрдпрд╛ рдирд╛рд╡рд╛рддреВрди рдкреНрд░рддреНрдпрдп рдХрд╛рдвреВрди рдЯрд╛рдХрд▓рд╛

рдпрд╛ рд╕рд░реНрд╡ рдШрдЯрдХрд╛рдВрдЪреЗ рд╕рд░реНрд╡рд╛рдд рдорд╣рддреНрддреНрд╡рд╛рдЪреЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рдореНрд╣рдгрдЬреЗ рддреЗ рдЕрдЬрд┐рдмрд╛рдд рди рдмрджрд▓рддрд╛ рдЗрддрд░ рдкреНрд░рдХрд▓реНрдкрд╛рдВрдордзреНрдпреЗ рдХреЙрдкреА рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддрд╛рдд. рд▓реЗрдЦрд╛рдд рдирдВрддрд░ рдореА .csproj рдлрд╛рдИрд▓рдордзреАрд▓ рд╕рд░реНрд╡ рдордЬрдХреВрд░ рд╕рдВрд▓рдЧреНрди рдХрд░реЗрди.

рдареАрдХ рдЖрд╣реЗ, рдЖрдореНрд╣реА рдкреНрд░рдХрд▓реНрдкрд╛рдЪреЗ рдЧреБрдгрдзрд░реНрдо рд╢реЛрдзреВрди рдХрд╛рдврд▓реЗ рдЖрд╣реЗрдд - рд╣реЗ рдЕрд╡рдШрдб рдирд╛рд╣реА. рдкрдг рдкреНрд▓рдЧ-рдЗрди рд▓рд╛рдпрдмреНрд░рд░реА (NuGet рдкреЕрдХреЗрдЬреЗрд╕) рд╕рд╣ рдХрд╛рдп рдХрд░рд╛рд╡реЗ. рдЬрд░ рдЖрдкрдг рдкреБрдвреЗ рдкрд╛рд╣рд┐рд▓реЗ рддрд░ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рджрд┐рд╕реЗрд▓ рдХреА рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рд▓рд╛рдпрдмреНрд░рд░реА рдШрдЯрдХрд╛рдВрдордзреНрдпреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд рдЖрдпрдЯрдорд╕рдореВрд╣. рдкрд░рдВрддреБ рджреБрд░реНрджреИрд╡ - рд╣рд╛ рдШрдЯрдХ рдШрдЯрдХ рдореНрд╣рдгреВрди рдЕрдЯреАрдВрд╡рд░ рдЪреБрдХреАрдЪреНрдпрд╛ рдкрджреНрдзрддреАрдиреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддреЛ рдорд╛рд▓рдорддреНрддрд╛ рдЧрдЯ. рдХрджрд╛рдЪрд┐рдд рд╣реА рдЕрдЧрджреА рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУ рдЧреНрд▓рд┐рдЪ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЖрдкрдг рдЕрдиреЗрдХ рдШрдЯрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реНрдпрд╛рд╕ рдЖрдпрдЯрдорд╕рдореВрд╣ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирдЪреНрдпрд╛ рдЕрдЯреАрдВрд╕рд╣, рдЖрдгрд┐ рдЖрдд NuGet рдкреЕрдХреЗрдЬреЗрд╕рдЪреНрдпрд╛ рднрд┐рдиреНрди рд▓рд┐рдВрдХреНрд╕ рдШрд╛рд▓рд╛, рдирдВрддрд░ рдЬреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣реА рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдмрджрд▓рддрд╛, рддреЗрд╡реНрд╣рд╛ рд╕рд░реНрд╡ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреЕрдХреЗрдЬреЗрд╕ рдкреНрд░рдХрд▓реНрдкрд╛рд╢реА рдЬреЛрдбрд▓реА рдЬрд╛рддрд╛рдд.

рдШрдЯрдХ рдЖрдордЪреНрдпрд╛ рдорджрддреАрд▓рд╛ рдпреЗрддреЛ рдирд┐рд╡рдбрд╛, рдЬреЗ рдЖрдордЪреНрдпрд╛ рдиреЗрд╣рдореАрдЪреНрдпрд╛ рддрд░реНрдХрд╛рдиреБрд╕рд╛рд░ рдХрд╛рд░реНрдп рдХрд░рддреЗ рдЬрд░-рддрд░-рддрд░.

рдШрдЯрдХ рд╡рд╛рдкрд░рдгреЗ рдирд┐рд╡рдбрд╛, рдЖрдореНрд╣реА рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╛рдареА рднрд┐рдиреНрди NuGet рдкреЕрдХреЗрдЬреЗрд╕ рд╕реЗрдЯ рдХрд░рддреЛ:

рд╕рд░реНрд╡ рд╕рд╛рдордЧреНрд░реА csproj

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0"  ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProjectGuid>{5AD738D6-4122-4E76-B865-BE7CE0F6B3EB}</ProjectGuid>
    <OutputType>Library</OutputType>
    <AppDesignerFolder>Properties</AppDesignerFolder>
    <RootNamespace>MySuperPluginForRevit</RootNamespace>
    <AssemblyName>MySuperPluginForRevit</AssemblyName>
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
    <FileAlignment>512</FileAlignment>
    <Deterministic>true</Deterministic>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>binDebug</OutputPath>
    <DefineConstants>DEBUG;R2015</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'R2015|AnyCPU' ">
    <OutputPath>binR2015</OutputPath>
    <DefineConstants>TRACE;R2015</DefineConstants>
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
    <AssemblyName>$(AssemblyName)_2015</AssemblyName>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'R2016|AnyCPU' ">
    <OutputPath>binR2016</OutputPath>
    <DefineConstants>TRACE;R2016</DefineConstants>
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
    <AssemblyName>$(AssemblyName)_2016</AssemblyName>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'R2017|AnyCPU' ">
    <OutputPath>binR2017</OutputPath>
    <DefineConstants>TRACE;R2017</DefineConstants>
    <TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
    <AssemblyName>$(AssemblyName)_2017</AssemblyName>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'R2018|AnyCPU' ">
    <OutputPath>binR2018</OutputPath>
    <DefineConstants>TRACE;R2018</DefineConstants>
    <TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
    <AssemblyName>$(AssemblyName)_2018</AssemblyName>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'R2019|AnyCPU' ">
    <OutputPath>binR2019</OutputPath>
    <DefineConstants>TRACE;R2019</DefineConstants>
    <TargetFrameworkVersion>v4.7</TargetFrameworkVersion>
    <AssemblyName>$(AssemblyName)_2019</AssemblyName>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'R2020|AnyCPU' ">
    <OutputPath>binR2020</OutputPath>
    <DefineConstants>TRACE;R2020</DefineConstants>
    <TargetFrameworkVersion>v4.7</TargetFrameworkVersion>
    <AssemblyName>$(AssemblyName)_2020</AssemblyName>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.Data" />
    <Reference Include="System.Net.Http" />
    <Reference Include="System.Xml" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="Class1.cs" />
    <Compile Include="PropertiesAssemblyInfo.cs" />
  </ItemGroup>
  <Choose>
    <When Condition=" '$(Configuration)'=='R2015' ">
      <ItemGroup>
        <PackageReference Include="ModPlus.Revit.API.2015">
          <Version>1.0.0</Version>
          <ExcludeAssets>runtime</ExcludeAssets>
        </PackageReference>
      </ItemGroup>
    </When>
    <When Condition=" '$(Configuration)'=='R2016' ">
      <ItemGroup>
        <PackageReference Include="ModPlus.Revit.API.2016">
          <Version>1.0.0</Version>
          <ExcludeAssets>runtime</ExcludeAssets>
        </PackageReference>
      </ItemGroup>
    </When>
    <When Condition=" '$(Configuration)'=='R2017' ">
      <ItemGroup>
        <PackageReference Include="ModPlus.Revit.API.2017">
          <Version>1.0.0</Version>
          <ExcludeAssets>runtime</ExcludeAssets>
        </PackageReference>
      </ItemGroup>
    </When>
    <When Condition=" '$(Configuration)'=='R2018' ">
      <ItemGroup>
        <PackageReference Include="ModPlus.Revit.API.2018">
          <Version>1.0.0</Version>
          <ExcludeAssets>runtime</ExcludeAssets>
        </PackageReference>
      </ItemGroup>
    </When>
    <When Condition=" '$(Configuration)'=='R2019' ">
      <ItemGroup>
        <PackageReference Include="ModPlus.Revit.API.2019">
          <Version>1.0.0</Version>
          <ExcludeAssets>runtime</ExcludeAssets>
        </PackageReference>
      </ItemGroup>
    </When>
    <When Condition=" '$(Configuration)'=='R2020' or '$(Configuration)'=='Debug'">
      <ItemGroup>
        <PackageReference Include="ModPlus.Revit.API.2020">
          <Version>1.0.0</Version>
          <ExcludeAssets>runtime</ExcludeAssets>
        </PackageReference>
      </ItemGroup>
    </When>
  </Choose>
  <Import Project="$(MSBuildToolsPath)Microsoft.CSharp.targets" />
</Project>

рдХреГрдкрдпрд╛ рд▓рдХреНрд╖рд╛рдд рдШреНрдпрд╛ рдХреА рдПрдХрд╛ рд╕реНрдерд┐рддреАрдд рдореА рджреЛрди рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рджреНрд╡рд╛рд░реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗ рдЖрд╣реЗрдд рдХрд┐рдВрд╡рд╛. рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рджрд░рдореНрдпрд╛рди рдЖрд╡рд╢реНрдпрдХ рдкреЕрдХреЗрдЬ рдХрдиреЗрдХреНрдЯ рдХреЗрд▓реЗ рдЬрд╛рдИрд▓ рдбреАрдмрдЧ.

рдЖрдгрд┐ рдпреЗрдереЗ рдЖрдкрд▓реНрдпрд╛рдХрдбреЗ рдЬрд╡рд│рдЬрд╡рд│ рд╕рд░реНрд╡рдХрд╛рд╣реА рдкрд░рд┐рдкреВрд░реНрдг рдЖрд╣реЗ. рдЖрдореНрд╣реА рдкреНрд░рдХрд▓реНрдк рдкрд░рдд рд▓реЛрдб рдХрд░рддреЛ, рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╕рдХреНрд╖рдо рдХрд░рддреЛ, рд╕реЛрд▓реНрдпреВрд╢рдирдЪреНрдпрд╛ рд╕рдВрджрд░реНрдн рдореЗрдиреВрдордзреНрдпреЗ рдЖрдпрдЯрдорд▓рд╛ рдХреЙрд▓ рдХрд░рддреЛ (рдкреНрд░рдХрд▓реНрдк рдирд╛рд╣реА)рд╕рд░реНрд╡ NuGet рдкреЕрдХреЗрдЬреЗрд╕ рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рдХрд░рд╛"рдЖрдгрд┐ рдЖрдореНрд╣реА рдкрд╛рд╣рддреЛ рдХреА рдЖрдордЪреА рдкреЕрдХреЗрдЬреЗрд╕ рдХрд╢реА рдмрджрд▓рддрд╛рдд.

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЖрдгрд┐ рдпрд╛ рдЯрдкреНрдкреНрдпрд╛рд╡рд░ рдореА рд╢реЗрд╡рдЯрдкрд░реНрдпрдВрдд рдкреЛрд╣реЛрдЪрд▓реЛ - рдПрдХрд╛рдЪ рд╡реЗрд│реА рд╕рд░реНрд╡ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдЧреЛрд│рд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рдмреЕрдЪ рдЕрд╕реЗрдВрдмреНрд▓реА рд╡рд╛рдкрд░реВ рд╢рдХрддреЛ (рдореЗрдиреВ "рдЕрд╕реЗрдВрдмреНрд▓реА->рдмреЕрдЪ рдмрд┐рд▓реНрдб"), рдкрд░рдВрддреБ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛рдирд╛, рдкреЕрдХреЗрдЬреЗрд╕ рдЖрдкреЛрдЖрдк рдкреБрдирд░реНрд╕рдВрдЪрдпрд┐рдд рд╣реЛрдд рдирд╛рд╣реАрдд. рдЖрдгрд┐ рдкреНрд░рдХрд▓реНрдк рдПрдХрддреНрд░ рдХрд░рддрд╛рдирд╛, рд╣реЗ рджреЗрдЦреАрд▓ рдШрдбрдд рдирд╛рд╣реА, рдЬрд░реА, рд╕реИрджреНрдзрд╛рдВрддрд┐рдХрджреГрд╖реНрдЯреНрдпрд╛, рддреЗ рдХреЗрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ. рдорд▓рд╛ рдорд╛рдирдХ рдорд╛рдзреНрдпрдорд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░реВрди рдпрд╛ рд╕рдорд╕реНрдпреЗрд╡рд░ рдЙрдкрд╛рдп рд╕рд╛рдкрдбрд▓рд╛ рдирд╛рд╣реА. рдЖрдгрд┐ рдмрд╣реБрдзрд╛ рд╣рд╛ рджреЗрдЦреАрд▓ рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУ рдмрдЧ рдЖрд╣реЗ.

рдореНрд╣рдгреВрди, рдмреЕрдЪ рдЕрд╕реЗрдВрдмреНрд▓реАрд╕рд╛рдареА, рд╡рд┐рд╢реЗрд╖ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рдЕрд╕реЗрдВрдмреНрд▓реА рд╕рд┐рд╕реНрдЯрдо рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрдгреНрдпрд╛рдд рдЖрд▓рд╛ nuke. рдорд▓рд╛ рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рд╣реЗ рдирдХреЛ рд╣реЛрддреЗ рдХрд╛рд░рдг рдорд▓рд╛ рд╡рд╛рдЯрддреЗ рдХреА рдкреНрд▓рдЧрдЗрди рдбреЗрд╡реНрд╣рд▓рдкрдореЗрдВрдЯрдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд рд╣реЗ рдУрд╡реНрд╣рд░рдХрд┐рд▓ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдпрд╛рдХреНрд╖рдгреА рдорд▓рд╛ рджреБрд╕рд░рд╛ рдХреЛрдгрддрд╛рд╣реА рдЙрдкрд╛рдп рджрд┐рд╕рдд рдирд╛рд╣реА. рдЖрдгрд┐ "рдХрд╛ Nuke?" рдпрд╛ рдкреНрд░рд╢реНрдирд╛рд╡рд░ рдЙрддреНрддрд░ рд╕реЛрдкреЗ рдЖрд╣реЗ - рдЖрдореНрд╣реА рддреЗ рдХрд╛рдорд╛рд╡рд░ рд╡рд╛рдкрд░рддреЛ.

рддрд░, рдЖрдордЪреНрдпрд╛ рд╕реЛрд▓реНрдпреВрд╢рдирдЪреНрдпрд╛ рдлреЛрд▓реНрдбрд░рд╡рд░ рдЬрд╛ (рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рд╣реА), рдХреА рджрд╛рдмреВрди рдареЗрд╡рд╛ рд╢рд┐рдлреНрдЯ рдЖрдгрд┐ рдлреЛрд▓реНрдбрд░рдордзреАрд▓ рд░рд┐рдХрд╛рдореНрдпрд╛ рдЬрд╛рдЧреЗрд╡рд░ рдЙрдЬрд╡реЗ-рдХреНрд▓рд┐рдХ рдХрд░рд╛ - рд╕рдВрджрд░реНрдн рдореЗрдиреВрдордзреНрдпреЗ рдЖрдпрдЯрдо рдирд┐рд╡рдбрд╛ тАЬрдпреЗрдереЗ PowerShell рд╡рд┐рдВрдбреЛ рдЙрдШрдбрд╛┬╗.

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЬрд░ рддреБрдореНрд╣реА рддреЗ рдЗрдиреНрд╕реНрдЯреЙрд▓ рдХреЗрд▓реЗрд▓реЗ рдирд╕реЗрд▓ nuke, рдирдВрддрд░ рдкреНрд░рдердо рдХрдорд╛рдВрдб рд▓рд┐рд╣рд╛

dotnet tool install Nuke.GlobalTool тАУglobal

рдЖрддрд╛ рдЖрдЬреНрдЮрд╛ рд▓рд┐рд╣рд╛ nuke рдЖрдгрд┐ рддреБрдореНрд╣рд╛рд▓рд╛ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреНрдпрд╛рд╕ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ рдЬрд╛рдИрд▓ nuke рд╕рдзреНрдпрд╛рдЪреНрдпрд╛ рдкреНрд░рдХрд▓реНрдкрд╛рд╕рд╛рдареА. рдорд▓рд╛ рд╣реЗ рд░рд╢рд┐рдпрдирдордзреНрдпреЗ рдЕрдзрд┐рдХ рдпреЛрдЧреНрдпрд░рд┐рддреНрдпрд╛ рдХрд╕реЗ рд▓рд┐рд╣рд╛рдпрдЪреЗ рддреЗ рдорд╛рд╣рд┐рдд рдирд╛рд╣реА - рдЗрдВрдЧреНрд░рдЬреАрдордзреНрдпреЗ рддреЗ рд▓рд┐рд╣рд┐рд▓реЗ рдЬрд╛рдИрд▓ Could not find .nuke рдлрд╛рдЗрд▓. рддреБрдореНрд╣рд╛рд▓рд╛ рдмрд┐рд▓реНрдб рд╕реЗрдЯрдЕрдк рдХрд░рд╛рдпрдЪреЗ рдЖрд╣реЗ рдХрд╛? [y/n]

Y рдХреА рджрд╛рдмрд╛ рдЖрдгрд┐ рдкреБрдвреЗ рдереЗрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рдЖрдпрдЯрдо рдЕрд╕рддреАрд▓. рдЖрдореНрд╣рд╛рд▓рд╛ рд╡рд╛рдкрд░реВрди рд╕рд░реНрд╡рд╛рдд рд╕реЛрдкрд╛ рдкрд░реНрдпрд╛рдп рд╣рд╡рд╛ рдЖрд╣реЗ рдПрдордПрд╕рдмрд┐рд▓реНрдб, рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдкреНрд░рдорд╛рдгреЗ рдЙрддреНрддрд░ рджреЗрддреЛ:

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рдЪрд▓рд╛ рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУрд╡рд░ рдЬрд╛рдК рдпрд╛, рдЬреЗ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рдорд╛рдзрд╛рди рд░реАрд▓реЛрдб рдХрд░рдгреНрдпрд╛рд╕ рд╕реВрдЪрд┐рдд рдХрд░реЗрд▓, рдХрд╛рд░рдг рддреНрдпрд╛рдд рдПрдХ рдирд╡реАрди рдкреНрд░рдХрд▓реНрдк рдЬреЛрдбрд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ. рдЖрдореНрд╣реА рд╕рдорд╛рдзрд╛рди рд░реАрд▓реЛрдб рдХрд░рддреЛ рдЖрдгрд┐ рдкрд╛рд╣рддреЛ рдХреА рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рдкреНрд░рдХрд▓реНрдк рдЖрд╣реЗ рддрдпрд╛рд░ рдЬреНрдпрд╛рдордзреНрдпреЗ рдЖрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рдПрдХрд╛ рдлрд╛рдИрд▓рдордзреНрдпреЗ рд╕реНрд╡рд╛рд░рд╕реНрдп рдЖрд╣реЗ - Build.cs

рдЖрдореНрд╣реА Revit/AutoCAD рдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЖрд╡реГрддреНрддреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдВрдХрд▓рдирд╛рд╕рд╣ рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рдХрд▓реНрдк рдмрдирд╡рддреЛ

рд╣реА рдлрд╛рдИрд▓ рдЙрдШрдбрд╛ рдЖрдгрд┐ рд╕рд░реНрд╡ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╛рдареА рдкреНрд░рдХрд▓реНрдк рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рд╣рд╛. рдмрд░рдВ, рдХрд┐рдВрд╡рд╛ рдорд╛рдЭреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рдкрд░рд╛, рдЬреА рддреБрдореНрд╣реА рддреБрдордЪреНрдпрд╛ рдЧрд░рдЬреЗрдиреБрд╕рд╛рд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реВ рд╢рдХрддрд╛:

using System.IO;
using Nuke.Common;
using Nuke.Common.Execution;
using Nuke.Common.ProjectModel;
using Nuke.Common.Tools.MSBuild;
using static Nuke.Common.Tools.MSBuild.MSBuildTasks;

[CheckBuildProjectConfigurations]
[UnsetVisualStudioEnvironmentVariables]
class Build : NukeBuild
{
    public static int Main () => Execute<Build>(x => x.Compile);

    [Solution] readonly Solution Solution;

    // If the solution name and the project (plugin) name are different, then indicate the project (plugin) name here
    string PluginName => Solution.Name;

    Target Compile => _ => _
        .Executes(() =>
        {
            var project = Solution.GetProject(PluginName);
            if (project == null)
                throw new FileNotFoundException("Not found!");

            var build = new List<string>();
            foreach (var (_, c) in project.Configurations)
            {
                var configuration = c.Split("|")[0];

                if (configuration == "Debug" || build.Contains(configuration))
                    continue;

                Logger.Normal($"Configuration: {configuration}");

                build.Add(configuration);

                MSBuild(_ => _
                    .SetProjectFile(project.Path)
                    .SetConfiguration(configuration)
                    .SetTargets("Restore"));
                MSBuild(_ => _
                    .SetProjectFile(project.Path)
                    .SetConfiguration(configuration)
                    .SetTargets("Rebuild"));
            }
        });
}

рдЖрдореНрд╣реА рдкреЙрд╡рд░рд╢реЗрд▓ рд╡рд┐рдВрдбреЛрд╡рд░ рдкрд░рдд рдЖрд▓реЛ рдЖрдгрд┐ рдкреБрдиреНрд╣рд╛ рдХрдорд╛рдВрдб рд▓рд┐рд╣рд╛ nuke (рддреБрдореНрд╣реА рдХрдорд╛рдВрдб рд▓рд┐рд╣реВ рд╢рдХрддрд╛ nuke рдЖрд╡рд╢реНрдпрдХ рджрд░реНрд╢рд╡рд┐рдд рдЖрд╣реЗ рд▓рдХреНрд╖реНрдп. рдкрдг рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рдЖрд╣реЗ рд▓рдХреНрд╖реНрдп, рдЬреЗ рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рдЪрд╛рд▓рддреЗ). рдПрдВрдЯрд░ рдХреА рджрд╛рдмрд▓реНрдпрд╛рдирдВрддрд░, рдЖрдореНрд╣рд╛рд▓рд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╣реЕрдХрд░реНрд╕рд╕рд╛рд░рдЦреЗ рд╡рд╛рдЯреЗрд▓, рдХрд╛рд░рдг, рдПрдЦрд╛рджреНрдпрд╛ рдЪрд┐рддреНрд░рдкрдЯрд╛рдкреНрд░рдорд╛рдгреЗ, рдЖрдордЪрд╛ рдкреНрд░рдХрд▓реНрдк рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╛рдареА рд╕реНрд╡рдпрдВрдЪрд▓рд┐рддрдкрдгреЗ рдПрдХрддреНрд░ рдХреЗрд▓рд╛ рдЬрд╛рдИрд▓.

рддрд╕реЗ, рддреБрдореНрд╣реА рдкреЙрд╡рд░рд╢реЗрд▓ рдереЗрдЯ рд╡реНрд╣рд┐рдЬреНрдпреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдУрдордзреВрди рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛ (рдореЗрдиреВ "рджреГрд╢реНрдп->рдЗрддрд░ рдЦрд┐рдбрдХреНрдпрд╛->рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрд░ рдХрдиреНрд╕реЛрд▓"), рдкрд░рдВрддреБ рд╕рд░реНрд╡рдХрд╛рд╣реА рдХрд╛рд│реНрдпрд╛ рдЖрдгрд┐ рдкрд╛рдВрдврд░реНрдпрд╛ рд░рдВрдЧрд╛рдд рдЕрд╕реЗрд▓, рдЬреЗ рдлрд╛рд░ рд╕реЛрдпреАрдЪреЗ рдирд╛рд╣реА.

рд╣рд╛ рдорд╛рдЭрд╛ рд▓реЗрдЦ рд╕рдВрдкрд╡рддреЛ. рдорд▓рд╛ рдЦрд╛рддреНрд░реА рдЖрд╣реЗ рдХреА рдСрдЯреЛрдХреЕрдбрдЪрд╛ рдкрд░реНрдпрд╛рдп рддреБрдореНрд╣реА рд╕реНрд╡рддрдГ рд╢реЛрдзреВ рд╢рдХрддрд╛. рдорд▓рд╛ рдЖрд╢рд╛ рдЖрд╣реЗ рдХреА рдпреЗрдереЗ рд╕рд╛рджрд░ рдХреЗрд▓реЗрд▓реА рд╕рд╛рдордЧреНрд░реА рддреНрдпрд╛рдЪреЗ "рдЧреНрд░рд╛рд╣рдХ" рд╢реЛрдзреЗрд▓.

рдЖрдкрдг рд▓рдХреНрд╖ рджрд┐рд▓реНрдпрд╛рдмрджреНрджрд▓ рдзрдиреНрдпрд╡рд╛рдж!

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛