Sdílet prostřednictvím


Správa odkazů v projektu

Než začnete psát kód proti externí komponentě nebo připojené službě, musí projekt nejprve obsahovat odkaz na ni. Odkaz je v podstatě položka v souboru projektu, který obsahuje informace, které Visual Studio potřebuje k vyhledání komponenty nebo služby.

Způsob přidání odkazu závisí na typu projektu pro kód, na kterém pracujete:

Můžete přidat odkaz na následující typy komponent a služeb:

  • Knihovny tříd nebo sestavení .NET

  • Aplikace pro UPW

  • COM – součásti

  • Jiná sestavení nebo knihovny tříd projektů ve stejném řešení

  • Sdílené projekty

  • webové služby XML

Odkazy na aplikace pro UPW

Univerzální platforma Windows (UPW) poskytuje společnou aplikační platformu pro každé zařízení s Windows. Pokud se chcete dozvědět, jak vytvořit aplikaci pro UPW, přečtěte si kurz: Vytvoření první Univerzální platforma Windows aplikace v sadě Visual Studio pomocí XAML a C#.

Odkazy na projekty

projekty Univerzální platforma Windows (UPW) můžou vytvářet odkazy na jiné projekty UPW v řešení nebo na projekty windows 8.1 nebo binární soubory za předpokladu, že tyto projekty nepoužívají rozhraní API, která jsou ve Windows 10 a novějších zastaralá. Další informace najdete v tématu Přechod z prostředí Windows Runtime 8 na UPW.

Pokud se rozhodnete změnit cílení projektů Windows 8.1 na Windows 10 a novější, přečtěte si téma Port, migrace a upgrade projektů sady Visual Studio.

Tip

Informace o tom, jak vytvořit a vytvořit novou aplikaci pro UPW pro Windows 10 a Windows 11, najdete v tématu Volba verze UPW.

Referenční informace k sadě SDK rozšíření

Aplikace Visual Basic, C#, C++ a JavaScript Univerzální platforma Windows (UPW) můžou odkazovat na sady SDK rozšíření, které cílí na Windows 8.1, pokud tyto sady SDK rozšíření nepoužívají rozhraní API, která jsou ve Windows 10 a novějších zastaralá. Podívejte se na web dodavatele sady SDK rozšíření a zjistěte, jestli na ni můžou odkazovat aplikace upW.

Pokud zjistíte, že sada SDK rozšíření, na kterou vaše aplikace odkazuje, není podporovaná, musíte provést následující kroky:

  1. Prohlédněte si název projektu, který způsobuje chybu. Platforma, na kterou cílí váš projekt, je uvedena v závorkách vedle názvu projektu. Například MyProjectName (Windows 8.1) znamená, že projekt MyProjectName cílí na platformu verze Windows 8.1.

  2. Přejděte na web dodavatele, který vlastní nepodporovanou sadu SDK rozšíření, a nainstalujte verzi sady Sdk rozšíření se závislostmi, které jsou kompatibilní s verzí platformy, na kterou váš projekt cílí.

    Poznámka:

    Jedním ze způsobů, jak zjistit, jestli sada SDK rozšíření obsahuje závislosti na jiných sadách SDK rozšíření, je vyhledáním správce odkazů. Restartujte Visual Studio, vytvořte nový projekt aplikace pro UPW v jazyce C# a potom klikněte pravým tlačítkem myši na projekt a vyberte Přidat odkaz. Přejděte na kartu Windows , potom na dílčí kartu Rozšíření a vyberte sadu SDK rozšíření. Podívejte se na pravé podokno ve Správci odkazů. Pokud obsahuje závislosti, zobrazí se tam.

    Důležité

    Pokud váš projekt cílí konkrétně na Windows 10 a sada SDK rozšíření nainstalovaná v předchozím kroku je závislá na balíčku modulu runtime Microsoft Visual C++, verze balíčku modulu runtime Microsoft Visual C++, která je kompatibilní s Windows 10, je v14.0 a je nainstalovaná se sadou Visual Studio.

  3. Pokud sada SDK rozšíření, kterou jste nainstalovali v předchozím kroku, obsahuje závislosti na jiných sadách SDK rozšíření, přejděte na lokality dodavatelů, kteří vlastní závislosti, a pak nainstalujte verze těchto závislostí, které jsou kompatibilní s verzí platformy, na kterou váš projekt cílí.

  4. Restartujte Visual Studio a otevřete aplikaci.

  5. Klikněte pravým tlačítkem myši na uzel Odkazy nebo závislosti v projektu, který způsobil chybu, a pak vyberte Přidat odkaz.

  6. Vyberte kartu Windows a potom podtabu Rozšíření, zrušte zaškrtnutí políček u starých sad SDK rozšíření a zaškrtněte políčka u nových sad SDK rozšíření. Vyberte OK.

Přidání odkazu v době návrhu

Když v projektu vytvoříte odkaz na sestavení, Visual Studio vyhledá sestavení v následujících umístěních:

  • Aktuální adresář projektu. (Tato sestavení můžete najít pomocí Karta Procházet .)

  • Ostatní adresáře projektů ve stejném řešení. (Tato sestavení najdete na Karta Projekty .)

Poznámka:

  • Všechny projekty obsahují implicitní odkaz na knihovnu mscorlib.
  • Všechny projekty obsahují implicitní odkaz na System.Core, i když System.Core je odebrán ze seznamu odkazů.
  • Projekty jazyka Visual Basic obsahují implicitní odkaz na Microsoft.VisualBasic.

Odkazy na sdílené komponenty za běhu

V době běhu musí být komponenty buď ve výstupní cestě projektu, nebo v globální mezipaměti sestavení (GAC). Pokud projekt obsahuje odkaz na objekt, který není v jednom z těchto umístění, musíte při sestavení projektu zkopírovat odkaz na výstupní cestu projektu. Vlastnost CopyLocal určuje, zda se má tato kopie vytvořit. Pokud je hodnota True, při sestavení projektu se odkaz zkopíruje do adresáře projektu. Pokud je hodnota False, odkaz se nezkopíruje.

Pokud nasadíte aplikaci, která obsahuje odkaz na vlastní komponentu zaregistrovanou v GAC, komponenta se s aplikací nenasadí bez CopyLocal ohledu na nastavení. V dřívějších verzích sady Visual Studio můžete vlastnost nastavit CopyLocal na odkaz, abyste zajistili, že bylo sestavení nasazeno. Nyní musíte ručně přidat sestavení do složky \Bin. Tato akce umístí veškerý vlastní kód pod kontrolu, čímž se sníží riziko publikování vlastního kódu, se kterým nejste obeznámeni.

Ve výchozím nastavení je vlastnost nastavena na False, CopyLocal pokud je sestavení nebo součást v globální mezipaměti sestavení nebo je součástí architektury. V opačném případě je hodnota nastavena na Hodnotu True. Odkazy mezi projekty jsou vždy nastaveny na hodnotu True.

Odkazování na projekt nebo sestavení, které cílí na jinou verzi .NET

Můžete vytvořit aplikace, které odkazují na projekty nebo sestavení, které cílí na jinou verzi rozhraní .NET. Můžete například vytvořit aplikaci, která cílí na rozhraní .NET Framework 4.6, která odkazuje na sestavení, které cílí na rozhraní .NET Framework 4.5. Pokud vytvoříte projekt, který cílí na starší verzi .NET, nemůžete v tomto projektu nastavit odkaz na projekt nebo sestavení, které cílí na novější verzi.

Další informace naleznete v tématu Přehled cílení architektury.

Odkazy na projekt-projekt

Odkazy na projekt-projekt jsou odkazy na projekty, které obsahují sestavení; odkazy na projekt přidáte pomocí karty Projekty v dialogovém okně Správce odkazů. Visual Studio může najít sestavení při zadání cesty k projektu.

Pokud máte projekt, který vytváří sestavení, měli byste na projekt odkazovat a nepoužívat odkaz na soubor. Výhodou odkazu typu projekt-projekt je, že vytváří závislost mezi projekty v systému sestavení. Závislý projekt se sestaví, pokud se změnil od posledního vytvoření odkazujícího projektu. Odkaz na soubor nevytvoří závislost sestavení, takže je možné vytvořit odkazující projekt bez sestavení závislého projektu a odkaz může být zastaralý. (To znamená, že projekt může odkazovat na dříve vytvořenou verzi projektu.) To může vést k tomu, že v adresáři bin je vyžadováno několik verzí jedné knihovny DLL, což není možné. Když dojde ke konfliktu, zobrazí se zpráva upozornění: závislost "soubor" v projektu "project" nelze zkopírovat do adresáře spuštění, protože by přepsala odkaz "file". Další informace najdete v tématu Řešení potíží s poškozenými odkazy a postupy: Vytvoření a odebrání závislostí projektu.

Poznámka:

Pokud cílová verze rozhraní .NET Framework jednoho projektu je verze 4.5 a cílová verze druhého projektu je verze 2, 3, 3, 3.5 nebo 4.0, vytvoří se odkaz na soubor místo odkazu na projekt.

Sdílené odkazy na projekt

Na rozdíl od většiny ostatních typů projektů nemá sdílený projekt žádný binární výstup. Místo toho se kód zkompiluje do každého projektu, který na něj odkazuje. Sdílené projekty umožňují napsat běžný kód, na který odkazuje mnoho různých projektů aplikací. Kód je zkompilován jako součást každého odkazujícího projektu a může obsahovat direktivy kompilátoru, které pomáhají začlenit funkce specifické pro platformu do sdíleného základu kódu. Přidejte odkaz na sdílený projekt na kartě Sdílené projekty v dialogovém okně Správce odkazů.

Odkazy na soubory

Odkazy na soubory jsou přímé odkazy na sestavení mimo kontext projektu sady Visual Studio. Vytvoříte je pomocí karty Procházet v dialogovém okně Správce odkazů. Odkaz na soubor použijte, pokud máte pouze sestavení nebo komponentu, a ne projekt, který ho vytvoří jako výstup.