НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

Кога Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚Π΅ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΡ†ΠΈ Π·Π° CAD Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ (Π²ΠΎ ΠΌΠΎΡ˜ΠΎΡ‚ ΡΠ»ΡƒΡ‡Π°Ρ˜ Ρ‚ΠΎΠ° сС AutoCAD, Revit ΠΈ Renga) со Ρ‚Π΅ΠΊΠΎΡ‚ Π½Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ, сС ΠΏΠΎΡ˜Π°Π²ΡƒΠ²Π° Π΅Π΄Π΅Π½ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ - сС ΠΎΠ±Ρ˜Π°Π²ΡƒΠ²Π°Π°Ρ‚ Π½ΠΎΠ²ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ, Π½ΠΈΠ²Π½ΠΈΡ‚Π΅ API сС ΠΌΠ΅Π½ΡƒΠ²Π°Π°Ρ‚ ΠΈ Ρ‚Ρ€Π΅Π±Π° Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²Π°Ρ‚ Π½ΠΎΠ²ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΡ†ΠΈ.

Кога ΠΈΠΌΠ°Ρ‚Π΅ само Π΅Π΄Π΅Π½ Π΄ΠΎΠ΄Π°Ρ‚ΠΎΠΊ ΠΈΠ»ΠΈ сè ΡƒΡˆΡ‚Π΅ стС самоук ΠΏΠΎΡ‡Π΅Ρ‚Π½ΠΈΠΊ Π²ΠΎ ΠΎΠ²Π° ΠΏΡ€Π°ΡˆΠ°ΡšΠ΅, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Сдноставно Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ копија ΠΎΠ΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚, Π΄Π° Π³ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΈΡ‚Π΅ мСста Π²ΠΎ Π½Π΅Π³ΠΎ ΠΈ Π΄Π° составитС Π½ΠΎΠ²Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊΠΎΡ‚. Π‘ΠΏΠΎΡ€Π΅Π΄ Ρ‚ΠΎΠ°, послСдоватСлнитС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π½Π° ΠΊΠΎΠ΄ΠΎΡ‚ ќС ΠΏΠΎΠ²Π»Π΅Ρ‡Π°Ρ‚ ΠΏΠΎΠ²Π΅ΡœΠ΅ΠΊΡ€Π°Ρ‚Π½ΠΎ Π·Π³ΠΎΠ»Π΅ΠΌΡƒΠ²Π°ΡšΠ΅ Π½Π° Ρ‚Ρ€ΠΎΡˆΠΎΡ†ΠΈΡ‚Π΅ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π½Π° сила.

Како ΡˆΡ‚ΠΎ стСкнуватС искуство ΠΈ знаСњС, ќС Π½Π°Ρ˜Π΄Π΅Ρ‚Π΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ Π½Π°Ρ‡ΠΈΠ½ΠΈ Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°ΡšΠ΅ Π½Π° овој процСс. Π“ΠΎ ΠΎΠ΄Π΅Π² овој ΠΏΠ°Ρ‚ ΠΈ сакам Π΄Π° Π²ΠΈ ΠΊΠ°ΠΆΠ°ΠΌ со ΡˆΡ‚ΠΎ Π·Π°Π²Ρ€ΡˆΠΈΠ² ΠΈ ΠΊΠΎΠ»ΠΊΡƒ Π΅ ΠΏΠΎΠ³ΠΎΠ΄Π½ΠΎ.

ΠŸΡ€Π²ΠΎ, Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ кој Π΅ ΠΎΡ‡ΠΈΠ³Π»Π΅Π΄Π΅Π½ ΠΈ кој Π³ΠΎ користам Π΄ΠΎΠ»Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅.

Врски Π΄ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½ΠΈΡ‚Π΅ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ

И Π·Π° Π΄Π° Π±ΠΈΠ΄Π΅ сè Сдноставно, Π²ΠΈΠ·ΡƒΠ΅Π»Π½ΠΎ ΠΈ Ρ€Π°Π·Π±ΠΈΡ€Π»ΠΈΠ²ΠΎ, ќС опишам сè ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ апстрактСн ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Ρ€Π°Π·Π²ΠΎΡ˜ Π½Π° ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΡ†ΠΈ.

АјдС Π΄Π° ΠΎΡ‚Π²ΠΎΡ€ΠΈΠΌΠ΅ Visual Studio (ја ΠΈΠΌΠ°ΠΌ Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° Π—Π°Π΅Π΄Π½ΠΈΡ†Π°Ρ‚Π° 2019. И Π΄Π° - Π½Π° руски) ΠΈ Π΄Π° создадСмС Π½ΠΎΠ²ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. АјдС Π΄Π° ΠΌΡƒ сС јавимС MySuperPluginForRevit

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

ЌС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ Π·Π° Revit Π·Π° Π²Π΅Ρ€Π·ΠΈΠΈ 2015-2020. Π—Π°Ρ‚ΠΎΠ°, ајдС Π΄Π° создадСмС Π½ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π²ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ (Net Framework Class Library) ΠΈ Π΄Π° Π³ΠΎ ΠΏΠΎΠ²ΠΈΠΊΠ°ΠΌΠ΅ MySuperPluginForRevit_2015

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

Π’Ρ€Π΅Π±Π° Π΄Π° Π΄ΠΎΠ΄Π°Π΄Π΅ΠΌΠ΅ врски Π΄ΠΎ API Π½Π° Revit. Π‘Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°, ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π΄ΠΎΠ΄Π°Π΄Π΅ΠΌΠ΅ врски Π΄ΠΎ Π»ΠΎΠΊΠ°Π»Π½ΠΈ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ (ќС Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π³ΠΈ инсталирамС ситС ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΈ SDK ΠΈΠ»ΠΈ ситС Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit), Π½ΠΎ вСднаш ќС ја слСдимС вистинската ΠΏΠ°Ρ‚Π΅ΠΊΠ° ΠΈ ќС Π³ΠΎ ΠΏΠΎΠ²Ρ€Π·Π΅ΠΌΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΡ‚ NuGet. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°Ρ˜Π΄Π΅Ρ‚Π΅ доста ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ, Π½ΠΎ јас ќС Π³ΠΈ користам ΠΌΠΎΠΈΡ‚Π΅.

ΠžΡ‚ΠΊΠ°ΠΊΠΎ ќС Π³ΠΎ ΠΏΠΎΠ²Ρ€Π·Π΅Ρ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΡ‚, ΠΊΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ со дСсното ΠΊΠΎΠΏΡ‡Π΅ Π½Π° ставката β€œΡ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈ"ΠΈ ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ ја ставката"ΠŸΡ€Π΅ΠΌΠ΅ΡΡ‚Π΅Ρ‚Π΅ Π³ΠΎ packages.config Π²ΠΎ PackageReference...Β»

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° 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

Π—Π°Π±Π΅Π»Π΅ΠΆΠ΅Ρ‚Π΅ Π΄Π΅ΠΊΠ° симболот ΠΌΠΎΡ€Π° Π΄Π° сС Π΄ΠΎΠ΄Π°Π΄Π΅ ΠΈ Π·Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈΡ‚Π΅ Π·Π° Debug ΠΈ Release.

Па, Π΄ΠΎΠ΄Π΅ΠΊΠ° смС Π²ΠΎ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†ΠΎΡ‚ со ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π°, вСднаш ΠΎΠ΄ΠΈΠΌΠ΅ Π½Π° Ρ‚Π°Π±ΡƒΠ»Π°Ρ‚ΠΎΡ€ΠΎΡ‚ β€žΠΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°β€žΠΈ Π½Π° Ρ‚Π΅Ρ€Π΅Π½β€œΠ‘Ρ‚Π°Π½Π΄Π°Ρ€Π΄Π΅Π½ имСнски простор» отстранСтС ја наставката _2015Ρ‚Π°ΠΊΠ° ΡˆΡ‚ΠΎ Π½Π°ΡˆΠΈΠΎΡ‚ имСнски простор Π΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€Π·Π°Π»Π΅Π½ ΠΈ нСзависСн ΠΎΠ΄ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° склопот:

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

Π’ΠΎ ΠΌΠΎΡ˜ΠΎΡ‚ ΡΠ»ΡƒΡ‡Π°Ρ˜, Π²ΠΎ Ρ„ΠΈΠ½Π°Π»Π½ΠΈΠΎΡ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄, ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΡ†ΠΈΡ‚Π΅ ΠΎΠ΄ ситС Π²Π΅Ρ€Π·ΠΈΠΈ сС ставаат Π²ΠΎ Π΅Π΄Π½Π° ΠΏΠ°ΠΏΠΊΠ°, Ρ‚Π°ΠΊΠ° ΡˆΡ‚ΠΎ ΠΌΠΎΠΈΡ‚Π΅ имиња Π½Π° склопови остануваат со наставката Π½Π° Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°Ρ€ΠΎΡ‚ _20Ρ…Ρ…. Но, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ исто Ρ‚Π°ΠΊΠ° Π΄Π° ја отстранитС наставката ΠΎΠ΄ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° склопот Π°ΠΊΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ сС прСтпоставува Π΄Π΅ΠΊΠ° сС Π½Π°ΠΎΡ“Π°Π°Ρ‚ Π²ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΠ°ΠΏΠΊΠΈ.

АјдС Π΄Π° ΠΎΠ΄ΠΈΠΌΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ‚ Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Класа 1.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;
        }
    }
}

Π’Π΅Π΄Π½Π°Ρˆ Π³ΠΈ Π·Π΅ΠΌΠ°Π² ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ ситС Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit Π½Π°Π΄ Π²Π΅Ρ€Π·ΠΈΡ˜Π°Ρ‚Π° 2015 Π³ΠΎΠ΄ΠΈΠ½Π° (ΠΊΠΎΠΈ Π±Π΅Π° достапни Π²ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΡ‚ Π½Π° ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ) ΠΈ вСднаш Π³ΠΎ Π·Π΅ΠΌΠ°Π² ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ присуството Π½Π° условни симболи Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π°, ΠΊΠΎΠΈ сС ΠΊΡ€Π΅ΠΈΡ€Π°Π½ΠΈ со ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° истиот шаблон.

АјдС Π΄Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌΠ΅ Π½Π° Π³Π»Π°Π²Π½ΠΈΠΎΡ‚ Π±Π΅Π»Π΅Π³. НиС создавамС Π½ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π²ΠΎ Π½Π°ΡˆΠ΅Ρ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, само Π·Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π°Ρ‚Π° Π½Π° ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊΠΎΡ‚ Π·Π° Revit 2016. Π“ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡƒΠ²Π°ΠΌΠ΅ ситС Ρ‡Π΅ΠΊΠΎΡ€ΠΈ опишани ΠΏΠΎΠ³ΠΎΡ€Π΅, соодвСтно, Π·Π°ΠΌΠ΅Π½ΡƒΠ²Π°Ρ˜ΡœΠΈ Π³ΠΎ Π±Ρ€ΠΎΡ˜ΠΎΡ‚ 2015 со Π±Ρ€ΠΎΡ˜ΠΎΡ‚ 2016. Но, Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Класа 1.cs ΠΈΠ·Π±Ρ€ΠΈΡˆΠ΅Ρ‚Π΅ ΠΎΠ΄ Π½ΠΎΠ²ΠΈΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

Π”Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° со ΠΏΠΎΡ‚Ρ€Π΅Π±Π½Π°Ρ‚Π° ΡˆΠΈΡ„Ρ€Π° - Класа 1.cs – вСќС Π³ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ ΠΈ само Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π²ΠΌΠ΅Ρ‚Π½Π΅ΠΌΠ΅ Π»ΠΈΠ½ΠΊ Π΄ΠΎ Π½Π΅Π³ΠΎ Π²ΠΎ Π½ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. ΠŸΠΎΡΡ‚ΠΎΡ˜Π°Ρ‚ Π΄Π²Π° Π½Π°Ρ‡ΠΈΠ½Π° Π·Π° Π²ΠΌΠ΅Ρ‚Π½ΡƒΠ²Π°ΡšΠ΅ врски:

  1. Π”ΠΎΠ»Π³ΠΎ – ΠΊΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ со дСсното ΠΊΠΎΠΏΡ‡Π΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ ΠΈ ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ β€žΠ”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅Β»->Β«ΠŸΠΎΡΡ‚ΠΎΠ΅Ρ‡ΠΊΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚", Π²ΠΎ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†ΠΎΡ‚ ΡˆΡ‚ΠΎ сС ΠΎΡ‚Π²ΠΎΡ€Π°, ΠΏΡ€ΠΎΠ½Π°Ρ˜Π΄Π΅Ρ‚Π΅ ја ΠΏΠΎΡ‚Ρ€Π΅Π±Π½Π°Ρ‚Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° ΠΈ намСсто ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π° "Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅"ΠΈΠ·Π±Π΅Ρ€ΠΈ ја ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π°"Π”ΠΎΠ΄Π°Ρ˜ ΠΊΠ°ΠΊΠΎ врска»

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

  1. ΠšΡ€Π°Ρ‚ΠΊΠΎ – Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π²ΠΎ истраТувачот Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ˜Π°, ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ ја саканата Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° (ΠΈΠ»ΠΈ Π΄ΡƒΡ€ΠΈ ΠΈ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ, ΠΏΠ° Π΄ΡƒΡ€ΠΈ ΠΈ Ρ†Π΅Π»ΠΈ ΠΏΠ°ΠΏΠΊΠΈ) ΠΈ ΠΏΠΎΠ²Π»Π΅Ρ‡Π΅Ρ‚Π΅ ја Π²ΠΎ Π½ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π΄ΠΎΠ΄Π΅ΠΊΠ° Π³ΠΎ Π΄Ρ€ΠΆΠΈΡ‚Π΅ ΠΊΠΎΠΏΡ‡Π΅Ρ‚ΠΎ Alt. Како ΡˆΡ‚ΠΎ Π²Π»Π΅Ρ‡Π΅Ρ‚Π΅, ќС Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π΄Π΅ΠΊΠ° ΠΊΠΎΠ³Π° ќС Π³ΠΎ притиснСтС ΠΊΠΎΠΏΡ‡Π΅Ρ‚ΠΎ Alt, курсорот Π½Π° Π³Π»ΡƒΠ²Ρ‡Π΅Ρ‚ΠΎ ќС сС ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΎΠ΄ Π·Π½Π°ΠΊ плус Π²ΠΎ стрСлка.
    UPD: Направив ΠΌΠ°Π»Π° ΠΊΠΎΠ½Ρ„ΡƒΠ·ΠΈΡ˜Π° Π²ΠΎ овој пасус - Π·Π° Π΄Π° ΠΏΡ€Π΅Ρ„Ρ€Π»ΠΈΡ‚Π΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π΄Ρ€ΠΆΠΈΡ‚Π΅ притиснато Shift + Alt!

По ΡΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° постапката ќС ΠΈΠΌΠ°ΠΌΠ΅ досиС Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΈΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Класа 1.cs со соодвСтната ΠΈΠΊΠΎΠ½Π° (сина стрСлка):

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

Кога ΡƒΡ€Π΅Π΄ΡƒΠ²Π°Ρ‚Π΅ ΠΊΠΎΠ΄ Π²ΠΎ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†ΠΎΡ‚ Π½Π° ΡƒΡ€Π΅Π΄ΡƒΠ²Π°Ρ‡ΠΎΡ‚, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ исто Ρ‚Π°ΠΊΠ° Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ Π²ΠΎ кој контСкст Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ Π΄Π° сС ΠΏΡ€ΠΈΠΊΠ°ΠΆΠ΅ ΠΊΠΎΠ΄ΠΎΡ‚, ΡˆΡ‚ΠΎ ќС Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈ Π΄Π° Π³ΠΎ Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΡ‚ ΡˆΡ‚ΠΎ сС ΡƒΡ€Π΅Π΄ΡƒΠ²Π° ΠΏΠΎΠ΄ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ симболи Π·Π° условна ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π°:

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

НиС Π³ΠΈ создавамС ситС Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ (2017-2020) ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ ја ΠΎΠ²Π°Π° шСма. Π›Π°Ρ˜Ρ„ Ρ…Π°ΠΊ - Π°ΠΊΠΎ Π²Π»Π΅Ρ‡Π΅Ρ‚Π΅ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Π²ΠΎ Solution Explorer Π½Π΅ ΠΎΠ΄ основниот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Ρ‚ΡƒΠΊΡƒ ΠΎΠ΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ ΠΊΠ°Π΄Π΅ ΡˆΡ‚ΠΎ вСќС сС Π²ΠΌΠ΅Ρ‚Π½Π°Ρ‚ΠΈ ΠΊΠ°ΠΊΠΎ врска, Ρ‚ΠΎΠ³Π°Ρˆ Π½Π΅ ΠΌΠΎΡ€Π° Π΄Π° Π³ΠΎ Π΄Ρ€ΠΆΠΈΡ‚Π΅ ΠΊΠΎΠΏΡ‡Π΅Ρ‚ΠΎ Alt!

ΠžΠΏΠΈΡˆΠ°Π½Π°Ρ‚Π° ΠΎΠΏΡ†ΠΈΡ˜Π° Π΅ доста Π΄ΠΎΠ±Ρ€Π° Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΡ‚ Π½Π° додавањС Π½ΠΎΠ²Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊΠΎΡ‚ ΠΈΠ»ΠΈ Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΡ‚ Π½Π° додавањС Π½ΠΎΠ²ΠΈ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Π²ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ - сСто ΠΎΠ²Π° станува ΠΌΠ½ΠΎΠ³Ρƒ досадно. И Π½Π΅ΠΎΠ΄Π°ΠΌΠ½Π° одСднаш наСднаш сфатив ΠΊΠ°ΠΊΠΎ сСто Ρ‚ΠΎΠ° Π΄Π° Π³ΠΎ срСдам со Π΅Π΄Π΅Π½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ ΠΏΡ€Π΅ΠΌΠΈΠ½ΡƒΠ²Π°ΠΌΠ΅ Π½Π° Π²Ρ‚ΠΎΡ€ΠΈΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄

ΠœΠ°Π³ΠΈΡ˜Π°Ρ‚Π° Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈΡ‚Π΅

ΠžΡ‚ΠΊΠ°ΠΊΠΎ ќС Π·Π°Π²Ρ€ΡˆΠΈΡ‚Π΅ со Ρ‡ΠΈΡ‚Π°ΡšΠ΅Ρ‚ΠΎ ΠΎΠ²Π΄Π΅, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·Π²ΠΈΠΊΠ½Π΅Ρ‚Π΅: β€žΠ—ΠΎΡˆΡ‚ΠΎ Π³ΠΎ ΠΎΠΏΠΈΡˆΠ°Π²Ρ‚Π΅ ΠΏΡ€Π²ΠΈΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄, Π°ΠΊΠΎ написот Π΅ вСднаш Π·Π° Π²Ρ‚ΠΎΡ€ΠΈΠΎΡ‚?!β€œ И опишав сè Π·Π° Π΄Π° Π±ΠΈΠ΄Π΅ појасно Π·ΠΎΡˆΡ‚ΠΎ Π½ΠΈ сС ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΈ симболи Π·Π° условна ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° ΠΈ Π½Π° ΠΊΠΎΠΈ мСста сС Ρ€Π°Π·Π»ΠΈΠΊΡƒΠ²Π°Π°Ρ‚ Π½Π°ΡˆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ. И сСга Π½ΠΈ станува појасно ΠΊΠ°ΠΊΠ²ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ€Π°Π·Π»ΠΈΠΊΠΈ Π²ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Ρ‚Ρ€Π΅Π±Π° Π΄Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅, ΠΎΡΡ‚Π°Π²Π°Ρ˜ΡœΠΈ само Π΅Π΄Π΅Π½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

И Π·Π° Π΄Π° Π±ΠΈΠ΄Π΅ сè ΠΏΠΎΠΎΡ‡ΠΈΠ³Π»Π΅Π΄Π½ΠΎ, Π½Π΅ΠΌΠ° Π΄Π° создадСмС Π½ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Ρ‚ΡƒΠΊΡƒ ќС Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π²ΠΎ Π½Π°ΡˆΠΈΠΎΡ‚ сСгашСн ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ создадСн Π½Π° ΠΏΡ€Π² Π½Π°Ρ‡ΠΈΠ½.

Π—Π½Π°Ρ‡ΠΈ, ΠΏΡ€Π΅Π΄ сè, Π³ΠΈ отстранувамС ситС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ ΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ освСн Π³Π»Π°Π²Π½ΠΈΠΎΡ‚ (ΡˆΡ‚ΠΎ Π³ΠΈ содрТи Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅). ОниС. ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π·Π° Π²Π΅Ρ€Π·ΠΈΠΈ 2016-2020. ΠžΡ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ ја ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° со Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΈ ΠΈΠ·Π±Ρ€ΠΈΡˆΠ΅Ρ‚Π΅ Π³ΠΈ ΠΏΠ°ΠΏΠΊΠΈΡ‚Π΅ Π½Π° ΠΎΠ²ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Ρ‚Π°ΠΌΡƒ.

ИмамС ΡƒΡˆΡ‚Π΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π²ΠΎ наша ΠΎΠ΄Π»ΡƒΠΊΠ° - MySuperPluginForRevit_2015. ΠžΡ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ Π³ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡ‚Π΅ ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π° ΠΈ:

  1. На Ρ˜Π°Π·ΠΈΡ‡Π΅Ρ‚ΠΎ "ΠΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°β€žΠžΡ‚ΡΡ‚Ρ€Π°Π½Π΅Ρ‚Π΅ ја наставката ΠΎΠ΄ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° склопот _2015 (ќС станС јасно Π·ΠΎΡˆΡ‚ΠΎ ΠΏΠΎΠ΄ΠΎΡ†Π½Π°)
  2. На Ρ˜Π°Π·ΠΈΡ‡Π΅Ρ‚ΠΎ "Π‘ΠΎΠ±Ρ€Π°Π½ΠΈΠ΅Β» отстранСтС Π³ΠΎ симболот Π·Π° условна ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° R2015 ΠΎΠ΄ соодвСтното ΠΏΠΎΠ»Π΅

Π—Π°Π±Π΅Π»Π΅ΡˆΠΊΠ°: Π½Π°Ρ˜Π½ΠΎΠ²Π°Ρ‚Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° Visual Studio ΠΈΠΌΠ° Π³Ρ€Π΅ΡˆΠΊΠ° - симболитС Π·Π° условна ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π½Π΅ сС ΠΏΡ€ΠΈΠΊΠ°ΠΆΡƒΠ²Π°Π°Ρ‚ Π²ΠΎ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†ΠΎΡ‚ Π·Π° ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚, ΠΈΠ°ΠΊΠΎ Ρ‚ΠΈΠ΅ сС достапни. Ако ја искуситС ΠΎΠ²Π°Π° Π³Ρ€Π΅ΡˆΠΊΠ°, Ρ‚ΠΎΠ³Π°Ρˆ Ρ‚Ρ€Π΅Π±Π° Ρ€Π°Ρ‡Π½ΠΎ Π΄Π° Π³ΠΈ отстранитС ΠΎΠ΄ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° .csproj. Π‘Π΅ΠΏΠ°ΠΊ, сè ΡƒΡˆΡ‚Π΅ Ρ‚Ρ€Π΅Π±Π° Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΠΌΠ΅ Π²ΠΎ Ρ‚ΠΎΠ°, ΠΏΠ° ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ˜Ρ‚Π΅ ΠΏΠΎΠ½Π°Ρ‚Π°ΠΌΡƒ.

ΠŸΡ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Ρ˜Ρ‚Π΅ Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ Π²ΠΎ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†ΠΎΡ‚ Solution Explorer со ΠΎΡ‚ΡΡ‚Ρ€Π°Π½ΡƒΠ²Π°ΡšΠ΅ Π½Π° наставката _2015 Π° ΠΏΠΎΡ‚ΠΎΠ° отстранСтС Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ ΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ. Ова Π΅ Π½Π΅ΠΎΠΏΡ…ΠΎΠ΄Π½ΠΎ Π·Π° ΠΎΠ΄Ρ€ΠΆΡƒΠ²Π°ΡšΠ΅ Π½Π° Ρ€Π΅Π΄ΠΎΡ‚ ΠΈ чувствата Π½Π° пСрфСкциониститС! ΠžΡ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ ја ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° Π½Π° Π½Π°ΡˆΠ΅Ρ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΏΡ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Ρ˜Ρ‚Π΅ ја ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½Π°Ρ‚Π° ΠΏΠ°ΠΏΠΊΠ° Ρ‚Π°ΠΌΡƒ Π½Π° ист Π½Π°Ρ‡ΠΈΠ½ ΠΈ Π²Ρ‡ΠΈΡ‚Π°Ρ˜Ρ‚Π΅ Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ Π½Π°Π·Π°Π΄ Π²ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ.

ΠžΡ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ Π³ΠΎ ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€ΠΎΡ‚ Π·Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π°. БАД ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π° ΠžΡΠ»ΠΎΠ±ΠΎΠ΄ΡƒΠ²Π°ΡšΠ΅ Π²ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ, Π½Π΅ΠΌΠ° Π΄Π° Π±ΠΈΠ΄Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎ, Π·Π°Ρ‚ΠΎΠ° Π³ΠΎ Π±Ρ€ΠΈΡˆΠ΅ΠΌΠ΅. Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΌΠ΅ Π½ΠΎΠ²ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ со имиња ΠΊΠΎΠΈ Π½ΠΈ сС вСќС ΠΏΠΎΠ·Π½Π°Ρ‚ΠΈ R2015, R2016,, R2020. Π—Π°Π±Π΅Π»Π΅ΠΆΠ΅Ρ‚Π΅ Π΄Π΅ΠΊΠ° Π½Π΅ Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π³ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°Ρ‚Π΅ поставкитС ΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ Π½Π΅ Ρ‚Ρ€Π΅Π±Π° Π΄Π° ΠΊΡ€Π΅ΠΈΡ€Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ:

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

ΠžΠ΄Π΅Ρ‚Π΅ Π²ΠΎ ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° со ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ ΠΈ ΠΎΡ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ ја Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° со наставката .csproj Π²ΠΎ ΡƒΡ€Π΅Π΄ΡƒΠ²Π°Ρ‡ ΠΏΠΎΠ³ΠΎΠ΄Π΅Π½ Π·Π° вас. ΠŸΠ°Ρ‚Π΅ΠΌ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ ΠΈ Π²ΠΎ Visual Studio - Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π³ΠΎ растоваратС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ ΠΈ ΠΏΠΎΡ‚ΠΎΠ° саканата ставка ќС Π±ΠΈΠ΄Π΅ Π²ΠΎ контСкстното ΠΌΠ΅Π½ΠΈ:

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

Π£Ρ€Π΅Π΄ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π²ΠΎ Visual Studio Π΅ Π΄ΡƒΡ€ΠΈ ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΎ, бидСјќи ΡƒΡ€Π΅Π΄Π½ΠΈΠΊΠΎΡ‚ ΠΈ ΠΏΠΎΡ€Π°ΠΌΠ½ΡƒΠ²Π° ΠΈ ΠΏΡ€Π°ΡˆΡƒΠ²Π°.

Π’ΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° ќС Π³ΠΈ Π²ΠΈΠ΄ΠΈΠΌΠ΅ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ PropertyGroup – Π½Π° самиот Π²Ρ€Π² Π΅ ΠΎΠΏΡˆΡ‚ΠΎΡ‚ΠΎ, Π° ΠΏΠΎΡ‚ΠΎΠ° Π΄ΠΎΠ°Ρ“Π°Π°Ρ‚ условитС. ОвиС Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π³ΠΈ поставуваат ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ ΠΊΠΎΠ³Π° сС Π³Ρ€Π°Π΄ΠΈ. ΠŸΡ€Π²ΠΈΠΎΡ‚ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚, кој Π΅ Π±Π΅Π· услови, поставува ΠΎΠΏΡˆΡ‚ΠΈ ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π°, Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ со услови, соодвСтно, ΠΌΠ΅Π½ΡƒΠ²Π°Π°Ρ‚ Π½Π΅ΠΊΠΎΠΈ ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π° Π²ΠΎ зависност ΠΎΠ΄ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈΡ‚Π΅.

ΠžΠ΄Π΅Ρ‚Π΅ Π΄ΠΎ Π·Π°Π΅Π΄Π½ΠΈΡ‡ΠΊΠΈΠΎΡ‚ (ΠΏΡ€Π²ΠΈΠΎΡ‚) Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ PropertyGroup ΠΈ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅Ρ‚Π΅ Π³ΠΎ ΠΈΠΌΠΎΡ‚ΠΎΡ‚ ИмС Π½Π° Π‘ΠΎΠ±Ρ€Π°Π½ΠΈΠ΅Ρ‚ΠΎ – Ρ‚Π°ΠΊΠ° сС Π²ΠΈΠΊΠ° собраниСто ΠΈ Π΄Π° Π³ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ Π±Π΅Π· наставка _2015. Ако ΠΈΠΌΠ° наставка, Ρ‚ΠΎΠ³Π°Ρˆ отстранСтС ја.

ΠΠ°ΠΎΡ“Π°ΡšΠ΅ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ со услов

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

НС Π½ΠΈ Ρ‚Ρ€Π΅Π±Π° - Π³ΠΎ Π±Ρ€ΠΈΡˆΠ΅ΠΌΠ΅.

Π•Π»Π΅ΠΌΠ΅Π½Ρ‚ со ΡΠΎΡΡ‚ΠΎΡ˜Π±Π°

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

ќС Π±ΠΈΠ΄Π°Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° Π²ΠΎ Ρ„Π°Π·Π° Π½Π° Ρ€Π°Π·Π²ΠΎΡ˜ Π½Π° ΠΊΠΎΠ΄ ΠΈ Π΄Π΅Π±Π°Π³ΠΈΡ€Π°ΡšΠ΅. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π½Π΅Π³ΠΎΠ²ΠΈΡ‚Π΅ ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π° Π·Π° Π΄Π° ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π°Π°Ρ‚ Π½Π° Π²Π°ΡˆΠΈΡ‚Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈ - поставСтС Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΈΠ·Π»Π΅Π·Π½ΠΈ ΠΏΠ°Ρ‚Π΅ΠΊΠΈ, ΠΌΠ΅Π½ΡƒΠ²Π°Ρ˜Ρ‚Π΅ симболи Π·Π° условна ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° ΠΈΡ‚Π½.

Π‘Π΅Π³Π° ајдС Π΄Π° создадСмС Π½ΠΎΠ²ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ PropertyGroup Π·Π° Π½Π°ΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π’ΠΎ ΠΎΠ²ΠΈΠ΅ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Ρ‚Ρ€Π΅Π±Π° само Π΄Π° поставимС Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈ ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π°:

  • ИзлСзна ΠΏΠ°Ρ‚Π΅ΠΊΠ° – ΠΈΠ·Π»Π΅Π·Π½Π° ΠΏΠ°ΠΏΠΊΠ°. Ја поставив стандардната врСдност binR20xx
  • Π”Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Ρ˜Ρ‚Π΅ ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚ΠΈ – симболи Π·Π° условна ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π°. ВрСдноста Ρ‚Ρ€Π΅Π±Π° Π΄Π° Π±ΠΈΠ΄Π΅ Π½Π°Π²Π΅Π΄Π΅Π½Π° TRACE;R20Ρ…Ρ…
  • TargetFrameworkVersion – Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°. Π Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit API Π±Π°Ρ€Π°Π°Ρ‚ Π΄Π° сС спСцифицираат Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ.
  • ИмС Π½Π° Π‘ΠΎΠ±Ρ€Π°Π½ΠΈΠ΅Ρ‚ΠΎ – ΠΈΠΌΠ΅ Π½Π° склопот (Ρ‚.Π΅. ΠΈΠΌΠ΅ Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°). ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΡ‚ΠΎ ΠΈΠΌΠ΅ Π½Π° склопот, Π½ΠΎ Π·Π° разновидност ΠΏΡ€Π΅ΠΏΠΎΡ€Π°Ρ‡ΡƒΠ²Π°ΠΌ Π΄Π° ја Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ врСдноста $(AssemblyName)_20Ρ…Ρ…. Π—Π° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΎΠ²Π°, ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ ја отстранивмС наставката ΠΎΠ΄ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° склопот

ΠΠ°Ρ˜Π²Π°ΠΆΠ½Π°Ρ‚Π° карактСристика Π½Π° ситС ΠΎΠ²ΠΈΠ΅ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π΅ ΡˆΡ‚ΠΎ Ρ‚ΠΈΠ΅ Сдноставно ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° сС ΠΊΠΎΠΏΠΈΡ€Π°Π°Ρ‚ Π²ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π±Π΅Π· Π²ΠΎΠΎΠΏΡˆΡ‚ΠΎ Π΄Π° сС ΠΌΠ΅Π½ΡƒΠ²Π°Π°Ρ‚. ΠŸΠΎΠ΄ΠΎΡ†Π½Π° Π²ΠΎ ΡΡ‚Π°Ρ‚ΠΈΡ˜Π°Ρ‚Π° ќС ја ΠΏΡ€ΠΈΠΊΠ°Ρ‡Π°ΠΌ Ρ†Π΅Π»Π°Ρ‚Π° содрТина Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° .csproj.

Π”ΠΎΠ±Ρ€ΠΎ, Π³ΠΈ сфативмС ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ - Π½Π΅ Π΅ Ρ‚Π΅ΡˆΠΊΠΎ. Но, ΡˆΡ‚ΠΎ Π΄Π° ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ со Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈΡ‚Π΅ со ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΡ†ΠΈ (ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ NuGet). Ако ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΠΏΠΎΠ½Π°Ρ‚Π°ΠΌΡƒ, ќС Π²ΠΈΠ΄ΠΈΠΌΠ΅ Π΄Π΅ΠΊΠ° Π²ΠΊΠ»ΡƒΡ‡Π΅Π½ΠΈΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ сС Π½Π°Π²Π΅Π΄Π΅Π½ΠΈ Π²ΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ Π“Ρ€ΡƒΠΏΠ° Π½Π° ставки. Но, лоша ΡΡ€Π΅ΡœΠ° - овој Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠ³Ρ€Π΅ΡˆΠ½ΠΎ Π³ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΡƒΠ²Π° условитС ΠΊΠ°ΠΊΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ PropertyGroup. МоТСби ΠΎΠ²Π° Π΅ Π΄ΡƒΡ€ΠΈ ΠΈ Π³Ρ€Π΅ΡˆΠΊΠ° Π½Π° Visual Studio, Π½ΠΎ Π°ΠΊΠΎ Π½Π°Π²Π΅Π΄Π΅Ρ‚Π΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π“Ρ€ΡƒΠΏΠ° Π½Π° ставки со услови Π·Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π° ΠΈ внСсСтС Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ врски Π΄ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ 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>

Π—Π°Π±Π΅Π»Π΅ΠΆΠ΅Ρ‚Π΅ Π΄Π΅ΠΊΠ° Π²ΠΎ Π΅Π΄Π΅Π½ ΠΎΠ΄ условитС Π½Π°Π²Π΅Π΄ΠΎΠ² Π΄Π²Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΡ€Π΅ΠΊΡƒ Π˜Π›Π˜. На овој Π½Π°Ρ‡ΠΈΠ½ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΈΠΎΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ ќС сС ΠΏΠΎΠ²Ρ€Π·Π΅ Π·Π° Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Debug.

И Ρ‚ΡƒΠΊΠ° ΠΈΠΌΠ°ΠΌΠ΅ рСчиси сè ΡΠΎΠ²Ρ€ΡˆΠ΅Π½ΠΎ. Π“ΠΎ Π²Ρ‡ΠΈΡ‚ΡƒΠ²Π°ΠΌΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ Π½Π°Π·Π°Π΄, ја ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π°ΠΌΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° ΡˆΡ‚ΠΎ Π½ΠΈ Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½Π°, ја ΠΏΠΎΠ²ΠΈΠΊΡƒΠ²Π°ΠΌΠ΅ ставката β€ž Π²ΠΎ контСкстното ΠΌΠ΅Π½ΠΈ Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ (Π½Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚)Π’Ρ€Π°Ρ‚Π΅Ρ‚Π΅ Π³ΠΈ ситС ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ NuGetβ€žΠ˜ Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠ°ΠΊΠΎ сС ΠΌΠ΅Π½ΡƒΠ²Π°Π°Ρ‚ Π½Π°ΡˆΠΈΡ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ.

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

И Π²ΠΎ ΠΎΠ²Π°Π° Ρ„Π°Π·Π° дојдов Π΄ΠΎ ΡœΠΎΡ€ΡΠΎΠΊΠ°ΠΊ - Π·Π° Π΄Π° Π³ΠΈ собСрСмС ситС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ одСднаш, ΠΌΠΎΠΆΠ΅Π²ΠΌΠ΅ Π΄Π° користимС сСриско ΡΠΊΠ»ΠΎΠΏΡƒΠ²Π°ΡšΠ΅ (ΠΌΠ΅Π½ΠΈ "Π‘ΠΎΠ±Ρ€Π°Π½ΠΈΠ΅Β»->Β«Π˜Π·Π³Ρ€Π°Π΄Π±Π° Π½Π° ΡΠ΅Ρ€ΠΈΡ˜Π°"), Π½ΠΎ ΠΊΠΎΠ³Π° сС ΠΏΡ€Π΅Ρ„Ρ€Π»Π°Π°Ρ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ Π½Π΅ сС Π²Ρ€Π°ΡœΠ°Π°Ρ‚ автоматски. И ΠΏΡ€ΠΈ ΡΠΎΡΡ‚Π°Π²ΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚, ΠΎΠ²Π° исто Ρ‚Π°ΠΊΠ° Π½Π΅ сС случува, ΠΈΠ°ΠΊΠΎ, тСорСтски, Ρ‚Ρ€Π΅Π±Π°. НС најдов Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π° овој ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ стандардни срСдства. И Π½Π°Ρ˜Π²Π΅Ρ€ΠΎΡ˜Π°Ρ‚Π½ΠΎ ΠΎΠ²Π° Π΅ исто Ρ‚Π°ΠΊΠ° Π³Ρ€Π΅ΡˆΠΊΠ° Π½Π° Visual Studio.

Π—Π°Ρ‚ΠΎΠ°, Π·Π° сСриско ΡΠΊΠ»ΠΎΠΏΡƒΠ²Π°ΡšΠ΅, бСшС ΠΎΠ΄Π»ΡƒΡ‡Π΅Π½ΠΎ Π΄Π° сС користи ΡΠΏΠ΅Ρ†ΠΈΡ˜Π°Π»Π΅Π½ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½ систСм Π·Π° ΡΠΊΠ»ΠΎΠΏΡƒΠ²Π°ΡšΠ΅ НуклСарка. Јас Π²ΡΡƒΡˆΠ½ΠΎΡΡ‚ Π½Π΅ Π³ΠΎ сакав ΠΎΠ²Π° бидСјќи мислам Π΄Π΅ΠΊΠ° Π΅ ΠΏΡ€Π΅Ρ‚Π΅Ρ€Π°Π½ΠΎ Π²ΠΎ однос Π½Π° Ρ€Π°Π·Π²ΠΎΡ˜ΠΎΡ‚ Π½Π° ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΡ†ΠΈΡ‚Π΅, Π½ΠΎ Π²ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² Π½Π΅ Π³Π»Π΅Π΄Π°ΠΌ Π΄Ρ€ΡƒΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. И Π½Π° ΠΏΡ€Π°ΡˆΠ°ΡšΠ΅Ρ‚ΠΎ β€žΠ—ΠΎΡˆΡ‚ΠΎ Нук?β€œ ΠžΠ΄Π³ΠΎΠ²ΠΎΡ€ΠΎΡ‚ Π΅ СдноставСн - Π³ΠΎ користимС Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°.

Π—Π½Π°Ρ‡ΠΈ, ΠΎΠ΄Π΅Ρ‚Π΅ Π²ΠΎ ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° Π½Π° Π½Π°ΡˆΠ΅Ρ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ (Π½Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚), Π΄Ρ€ΠΆΠ΅Ρ‚Π΅ Π³ΠΎ ΠΊΠ»ΡƒΡ‡ΠΎΡ‚ ΠŸΡ€Π΅Ρ„Ρ€Π»Π°Ρ‚ ΠΈ ΠΊΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ со дСсното ΠΊΠΎΠΏΡ‡Π΅ Π½Π° ΠΏΡ€Π°Π·Π΅Π½ простор Π²ΠΎ ΠΏΠ°ΠΏΠΊΠ°Ρ‚Π° - Π²ΠΎ контСкстното ΠΌΠ΅Π½ΠΈ ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ ја ставката β€œΠžΡ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ Π³ΠΎ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†ΠΎΡ‚ PowerShell ΠΎΠ²Π΄Π΅".

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

Ако Π³ΠΎ Π½Π΅ΠΌΠ°Ρ‚Π΅ инсталирано Π½ΡƒΠΊΠ»Π΅Π°Ρ€ΠΊΠ°, ΠΏΠΎΡ‚ΠΎΠ° ΠΏΡ€Π²ΠΎ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ја ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π°

dotnet tool install Nuke.GlobalTool –global

Π‘Π΅Π³Π° Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ја ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Π½ΡƒΠΊΠ»Π΅Π°Ρ€ΠΊΠ° ΠΈ ќС Π²ΠΈ Π±ΠΈΠ΄Π΅ ΠΏΠΎΠ±Π°Ρ€Π°Π½ΠΎ Π΄Π° Π³ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Ρ‚Π΅ Π½ΡƒΠΊΠ»Π΅Π°Ρ€ΠΊΠ° Π·Π° Ρ‚Π΅ΠΊΠΎΠ²Π½ΠΈΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. НС Π·Π½Π°ΠΌ ΠΊΠ°ΠΊΠΎ Π΄Π° Π³ΠΎ напишам ΠΎΠ²Π° ΠΏΠΎΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ Π½Π° руски - Π½Π° англиски ќС Π±ΠΈΠ΄Π΅ напишано НС ΠΌΠΎΠΆΠ°ΠΌ Π΄Π° ја најдам Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° .nuke. Π”Π°Π»ΠΈ сакатС Π΄Π° поставитС Π³Ρ€Π°Π΄Π±Π°? [y/n]

ΠŸΡ€ΠΈΡ‚ΠΈΡΠ½Π΅Ρ‚Π΅ Π³ΠΎ ΠΊΠΎΠΏΡ‡Π΅Ρ‚ΠΎ Y ΠΈ ΠΏΠΎΡ‚ΠΎΠ° ќС ΠΈΠΌΠ° ставки Π·Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΈ поставки. Ни Ρ‚Ρ€Π΅Π±Π° Π½Π°Ρ˜Π΅Π΄Π½ΠΎΡΡ‚Π°Π²Π½Π°Ρ‚Π° ΠΎΠΏΡ†ΠΈΡ˜Π° Π·Π° ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ MSBuild, ΠΏΠ° ΠΎΠ΄Π³ΠΎΠ²Π°Ρ€Π°ΠΌΠ΅ ΠΊΠ°ΠΊΠΎ Π½Π° сликата ΠΎΠ΄ Π΅ΠΊΡ€Π°Π½ΠΎΡ‚:

НиС ΠΏΡ€Π°Π²ΠΈΠΌΠ΅ Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ†ΠΈΡ˜Π° Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²Π΅Ρ€Π·ΠΈΠΈ Π½Π° Revit/AutoCAD

АјдС Π΄Π° ΠΎΠ΄ΠΈΠΌΠ΅ Π²ΠΎ Visual Studio, ΠΊΠΎΠ΅ ќС Π½Π΅ ΠΏΠΎΡ‚Ρ‚ΠΈΠΊΠ½Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Π΄Π° Π³ΠΎ Π²Ρ‡ΠΈΡ‚Π°ΠΌΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ, бидСјќи Π½Π° Π½Π΅Π³ΠΎ Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ Π½ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Π“ΠΎ Π²Ρ‡ΠΈΡ‚Π°ΠΌΠ΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΈ Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΈΠΌΠ°ΠΌΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ сС ΠΈΠ·Π³Ρ€Π°Π΄ΠΈ Π²ΠΎ која Π½Γ¨ интСрСсира само Π΅Π΄Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° - 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"));
            }
        });
}

Π‘Π΅ Π²Ρ€Π°ΡœΠ°ΠΌΠ΅ Π²ΠΎ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†ΠΎΡ‚ PowerShell ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ја ΠΏΠΈΡˆΡƒΠ²Π°ΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Π½ΡƒΠΊΠ»Π΅Π°Ρ€ΠΊΠ° (ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ја Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Π½ΡƒΠΊΠ»Π΅Π°Ρ€ΠΊΠ° ΡƒΠΊΠ°ΠΆΡƒΠ²Π°Ρ˜ΡœΠΈ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΈΡ‚Π΅ Π¦Π΅Π»Π½Π°. Но, Π½ΠΈΠ΅ ΠΈΠΌΠ°ΠΌΠ΅ Π΅Π΄Π΅Π½ Π¦Π΅Π»Π½Π°, кој Ρ€Π°Π±ΠΎΡ‚ΠΈ стандардно). ΠžΡ‚ΠΊΠ°ΠΊΠΎ ќС Π³ΠΎ притиснСтС ΠΊΠΎΠΏΡ‡Π΅Ρ‚ΠΎ Enter, ќС сС чувствувамС ΠΊΠ°ΠΊΠΎ вистински Ρ…Π°ΠΊΠ΅Ρ€ΠΈ, бидСјќи, ΠΊΠ°ΠΊΠΎ Π½Π° Ρ„ΠΈΠ»ΠΌ, Π½Π°ΡˆΠΈΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ автоматски ќС сС составува Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

ΠŸΠ°Ρ‚Π΅ΠΌ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ користитС PowerShell Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ΄ Visual Studio (ΠΌΠ΅Π½ΠΈ "ΠŸΡ€ΠΈΠΊΠ°ΠΆΠΈ Π³ΠΈΒ»->Β«Π”Ρ€ΡƒΠ³ΠΈ ΠΏΡ€ΠΎΠ·ΠΎΡ€Ρ†ΠΈΒ»->«Конзола Π·Π° ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈβ€œ), Π½ΠΎ сè ќС Π±ΠΈΠ΄Π΅ Ρ†Ρ€Π½ΠΎ-Π±Π΅Π»ΠΎ, ΡˆΡ‚ΠΎ Π½Π΅ Π΅ ΠΌΠ½ΠΎΠ³Ρƒ ΠΏΠΎΠ³ΠΎΠ΄Π½ΠΎ.

Ова ја Π·Π°Π²Ρ€ΡˆΡƒΠ²Π° ΠΌΠΎΡ˜Π°Ρ‚Π° ΡΡ‚Π°Ρ‚ΠΈΡ˜Π°. Π‘ΠΈΠ³ΡƒΡ€Π΅Π½ сум Π΄Π΅ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ сами Π΄Π° ја сфатитС ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° AutoCAD. Π‘Π΅ Π½Π°Π΄Π΅Π²Π°ΠΌ Π΄Π΅ΠΊΠ° ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΡ˜Π°Π»ΠΎΡ‚ ΠΏΡ€Π΅Π·Π΅Π½Ρ‚ΠΈΡ€Π°Π½ ΠΎΠ²Π΄Π΅ ќС Π³ΠΈ најдС своитС β€žΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈβ€œ.

Π’ΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€ΠΈΠΌΠ΅!

Π˜Π·Π²ΠΎΡ€: www.habr.com

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€