Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Neste tutorial, você cria uma biblioteca de utilitários simples que contém um único método de manipulação de cadeia de caracteres.
Uma biblioteca de classes define tipos e métodos que são chamados por um aplicativo. Se a biblioteca tiver como alvo o .NET Standard 2.0, pode ser chamada por qualquer implementação .NET (incluindo o .NET Framework) que suporte o .NET Standard 2.0. Se a biblioteca tiver como alvo o .NET 10, pode ser chamada por qualquer aplicação que tenha como alvo o .NET 10. Este tutorial mostra como direcionar o .NET 10.
Ao criar uma biblioteca de classes, você pode distribuí-la como um componente de terceiros ou como um componente agregado com um ou mais aplicativos.
Pré-requisitos
Visual Studio com a carga de trabalho .NET desenvolvimento desktop instalada. O SDK .NET é instalado automaticamente quando seleciona esta carga de trabalho.
Para mais informações, consulte Instale o SDK .NET com Visual Studio.
- O SDK mais recente .NET
- Visual Studio Code editor
- O Kit de Desenvolvimento C#
Instruções de instalação
No Windows, utilize este ficheiro de configuração WinGet para instalar todos os pré-requisitos. Se você já tiver algo instalado, o WinGet ignorará essa etapa.
- Baixe o arquivo e clique duas vezes para executá-lo.
- Leia o contrato de licença, digite ye selecione Enter quando solicitado a aceitar.
- Se surgir um aviso de Controle de Conta de Utilizador (UAC) intermitente na barra de tarefas, permita que a instalação prossiga.
Em outras plataformas, você precisa instalar cada um desses componentes separadamente.
- Descarregue o instalador recomendado na página de download do SDK .NET e clique duas vezes para o executar. A página de download deteta sua plataforma e recomenda o instalador mais recente para sua plataforma.
- Descarregue o instalador mais recente na página inicial Visual Studio Code e clique duas vezes para o executar. Essa página também deteta a sua plataforma e o link deve estar correto para o seu sistema.
- Clique no botão "Instalar" na página de extensão C# DevKit. Isso abre o código do Visual Studio e pergunta se queres instalar ou ativar a extensão. Selecione "instalar".
- Uma conta GitHub para usar GitHub Codespaces. Se ainda não tiveres uma, podes criar uma conta gratuita em GitHub.com.
Criar uma solução
Comece por criar uma solução em branco que irá conter o projeto da biblioteca de classes. Uma solução Visual Studio serve como contentor para um ou mais projetos. Adicione projetos relacionados à mesma solução.
Para criar a solução em branco:
Inicia o Visual Studio.
Na janela Iniciar, escolha Criar um novo projeto.
Na página Criar um novo projeto , insira solução na caixa de pesquisa. Escolha o modelo Solução em Branco e, em seguida, escolha Avançar.
Na página Configurar seu novo projeto , digite ClassLibraryProjects na caixa Nome da solução . Em seguida, escolha Criar.
Comece por criar um projeto de biblioteca de classes .NET chamado "StringLibrary" e uma solução associada. Uma solução serve como um contêiner para um ou mais projetos. Você adicionará projetos adicionais relacionados à mesma solução.
Abra o Visual Studio Code.
Vai à vista do Explorador e seleciona Criar .NET Projeto. Alternativamente, podes abrir a Paleta de Comandos usando Ctrl+Shift+P (Comando+Shift+P no MacOS) e depois escrever ".NET" e encontrar e selecionar o comando .NET: New Project.
Escolha o modelo de projeto Biblioteca de Classes.
Em seguida, selecione o local onde você gostaria que o novo projeto fosse criado: Crie uma pasta chamada
ClassLibraryProjectse selecione-a.Nomeie o projeto StringLibrary.
Selecione .sln como formato de ficheiro de solução.
Selecionar Mostrar todas as opções do modelo.
De seguida, selecione .NET 10. Depois seleciona Criar Projeto.
No diálogo Confias nos autores dos ficheiros desta pasta?,seleciona Sim, confio nos autores. Podes confiar nos autores porque esta pasta só tem ficheiros gerados por .NET e adicionados ou modificados por ti.
Comece por criar um Codespace GitHub com o ambiente do tutorial, depois crie um projeto de biblioteca de classes .NET.
Abra uma janela do navegador e navegue até ao repositório Codespace do tutorial.
Seleciona o botão verde de Código e depois o separador Codespaces .
Selecione o
+ícone ou o botão verde Criar espaço de código no principal para criar um novo espaço de código usando este ambiente.
Quando o seu espaço de código carregar, abra o terminal e navegue até à pasta tutoriais:
cd tutorialsCrie um novo projeto de biblioteca de turmas:
dotnet new classlib -n StringLibrary
Criar um projeto de biblioteca de classes
Adicione um novo projeto de biblioteca de classes .NET chamado StringLibrary à solução.
Clique com o botão direito na solução em Solution Explorer e selecione Adicionar>Novo Projeto.
Na página Adicionar um novo projeto , insira biblioteca na caixa de pesquisa. Escolha C# ou Visual Basic da lista de Línguas, e depois escolha Todas as plataformas da lista de Plataformas. Escolha o modelo Biblioteca de Classes e, em seguida, escolha Avançar.
Na página Configurar seu novo projeto , digite StringLibrary na caixa Nome do projeto e escolha Avançar.
Na página Informação adicional, selecione .NET 10 e depois escolha Criar.
Verifique se a biblioteca tem como alvo a versão correta do .NET. Clique com o botão direito no projeto da biblioteca em Solution Explorer e depois selecione Properties. A caixa de texto Target Framework mostra que o projeto visa o .NET 10.0.
Se estiveres a usar Visual Basic, limpa o texto na caixa de texto Namespace Default.
Para cada projeto, o Visual Basic cria automaticamente um namespace que corresponde ao nome do projeto. Neste tutorial, você define um namespace de nível superior usando a
namespacepalavra-chave no arquivo de código.Substitua o código na janela de código para Class1.cs ou Class1.vb com o código a seguir e salve o arquivo. Se o idioma que pretende utilizar não for apresentado, altere o seletor de idioma na parte superior da página.
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }Imports System.Runtime.CompilerServices Namespace UtilityLibraries Public Module StringLibrary <Extension> Public Function StartsWithUpper(str As String) As Boolean If String.IsNullOrWhiteSpace(str) Then Return False End If Dim ch As Char = str(0) Return Char.IsUpper(ch) End Function End Module End NamespaceA biblioteca de classes,
UtilityLibraries.StringLibrary, contém um método chamadoStartsWithUpper. Esse método retorna um valor Boolean que indica se a ocorrência de cadeia de caracteres atual começa com um caractere maiúsculo. O padrão Unicode distingue caracteres maiúsculos de caracteres minúsculos. O método Char.IsUpper(Char) devolvetruese um carácter for maiúsculo.StartsWithUpperé implementado como um método de extensão para que você possa chamá-lo como se fosse um membro da String classe. O ponto de interrogação (?) depoisstringno código C# indica que a cadeia de caracteres pode ser nula.Na barra de menus, selecione Build>Build Solution ou pressione Ctrl+Shift+B para verificar se o projeto é compilado sem erros.
O projeto é criado e Class1.cs abre.
Substitua o conteúdo da Class1.cs pelo seguinte código:
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }A biblioteca de classes,
UtilityLibraries.StringLibrary, contém um método chamadoStartsWithUpper. Esse método retorna um valor Boolean que indica se a ocorrência de cadeia de caracteres atual começa com um caractere maiúsculo. O padrão Unicode distingue caracteres maiúsculos de caracteres minúsculos. O método Char.IsUpper(Char) devolvetruese um carácter for maiúsculo.StartsWithUpperé implementado como um método de extensão para que você possa chamá-lo como se fosse um membro da String classe.Salve o arquivo.
Expandir Solution Explorer na parte inferior da vista Explorer.
Clique com o botão direito na solução em Solution Explorer e selecione Build, ou abra a Paleta de Comandos e selecione .NET: Build para construir a solução e verificar se o projeto compila sem erro.
A saída do terminal se parece com o exemplo a seguir:
Determining projects to restore... All projects are up-to-date for restore. StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net10.0\StringLibrary.dll Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:02.78
Navegue até à pasta StringLibrary:
cd StringLibraryAbra Class1.cs e substitua o seu conteúdo pelo seguinte código:
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }A biblioteca de classes,
UtilityLibraries.StringLibrary, contém um método chamadoStartsWithUpper. Esse método retorna um valor Boolean que indica se a ocorrência de cadeia de caracteres atual começa com um caractere maiúsculo. O padrão Unicode distingue caracteres maiúsculos de caracteres minúsculos. O método Char.IsUpper(Char) devolvetruese um carácter for maiúsculo.StartsWithUpperé implementado como um método de extensão para que você possa chamá-lo como se fosse um membro da String classe.Guarde o ficheiro e constrói o projeto:
dotnet buildA build deverá ter sucesso sem erros.
Adicionar um aplicativo de console à solução
Adicione um aplicativo de console que use a biblioteca de classes. O aplicativo solicitará que o usuário insira uma cadeia de caracteres e informe se a cadeia de caracteres começa com um caractere maiúsculo.
Adicione uma nova aplicação de consola .NET chamada ShowCase à solução.
Clique com o botão direito na solução em Solution Explorer e selecione Adicionar>Novo Projeto.
Na página Adicionar um novo projeto , insira console na caixa de pesquisa. Escolha C# ou Visual Basic da lista de Línguas, e depois escolha Todas as plataformas da lista de Plataformas.
Escolha o modelo de aplicação de consola
e, em seguida, escolha Avançar .Na página Configurar seu novo projeto , digite ShowCase na caixa Nome do projeto . Em seguida, escolha Avançar.
Na página Informação adicional, selecione .NET 10 na caixa Framework. Em seguida, escolha Criar.
Na janela de código do arquivo Program.cs ou Program.vb , substitua todo o código pelo código a seguir.
using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }Imports UtilityLibraries Module Program Dim row As Integer = 0 Sub Main() Do If row = 0 OrElse row >= 25 Then ResetConsole() Dim input As String = Console.ReadLine() If String.IsNullOrEmpty(input) Then Return Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{If(input.StartsWithUpper(), "Yes", "No")} {Environment.NewLine}") row += 3 Loop While True End Sub Private Sub ResetConsole() If row > 0 Then Console.WriteLine("Press any key to continue...") Console.ReadKey() End If Console.Clear() Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}") row = 3 End Sub End ModuleO código usa a
rowvariável para manter uma contagem do número de linhas de dados gravados na janela do console. Sempre que for maior ou igual a 25, o código limpa a janela do console e exibe uma mensagem para o usuário.O programa solicita que o usuário insira uma cadeia de caracteres. Ele indica se a cadeia de caracteres começa com um caractere maiúsculo. Se o usuário pressionar a tecla Enter sem inserir uma cadeia de caracteres, o aplicativo termina e a janela do console é fechada.
Clique com o botão direito na solução em Solution Explorer e selecione Novo Projeto, ou na Paleta de Comandos selecione .NET: Novo Projeto.
Selecione a aplicação de consola.
Dá-lhe o nome ShowCase, seleciona o diretório predefinido e seleciona Criar Projeto.
Abra ShowCase/Program.cs e substitua todo o código pelo código a seguir.
using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }O código usa a
rowvariável para manter uma contagem do número de linhas de dados gravados na janela do console. Sempre que for maior ou igual a 25, o código limpa a janela do console e exibe uma mensagem para o usuário.O programa solicita que o usuário insira uma cadeia de caracteres. Ele indica se a cadeia de caracteres começa com um caractere maiúsculo. Se o usuário pressionar a tecla Enter sem inserir uma cadeia de caracteres, o aplicativo termina e a janela do console é fechada.
Salve suas alterações.
Volta à pasta de tutoriais e cria uma nova aplicação de consola:
cd .. dotnet new console -n ShowCaseAbra o ShowCase/Program.cs e substitua todo o código pelo seguinte:
using System; using UtilityLibraries; int row = 0; do { if (row == 0 || row >= 25) ResetConsole(); string? input = Console.ReadLine(); if (string.IsNullOrWhiteSpace(input)) break; Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " + $"{(input.StartsWithUpper() ? "Yes" : "No")}{Environment.NewLine}"); row += 3; } while (true); return; // Declare a ResetConsole local method void ResetConsole() { if (row > 0) { Console.WriteLine("Press any key to continue..."); Console.ReadKey(); } Console.Clear(); Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}"); row = 3; }O código usa a
rowvariável para manter uma contagem do número de linhas de dados gravados na janela do console. Sempre que for maior ou igual a 25, o código limpa a janela do console e exibe uma mensagem para o usuário.O programa solicita que o usuário insira uma cadeia de caracteres. Ele indica se a cadeia de caracteres começa com um caractere maiúsculo. Se o usuário pressionar a tecla Enter sem inserir uma cadeia de caracteres, o aplicativo termina e a janela do console é fechada.
Salve suas alterações.
Adicionar uma referência de projeto
Inicialmente, o novo projeto de aplicativo de console não tem acesso à biblioteca de classes. Para permitir que ele chame métodos na biblioteca de classes, crie uma referência de projeto para o projeto de biblioteca de classes.
Em Solution Explorer, clique com o botão direito do rato no nó
ShowCasedo projeto, dependências Dependências, e selecione Adicionar Referência do Projeto.
Na caixa de diálogo Gerenciador de referências, selecione o projeto StringLibrary e selecione OK.
Em Solution Explorer clique com o botão direito no projeto ShowCase e selecione Adicionar Referência do Projeto.
Selecione StringLibrary.
Sugestão
Em alternativa, adicione o seguinte ao ShowCase.csproj:
<ItemGroup>
<ProjectReference Include="..\StringLibrary\StringLibrary.csproj" />
</ItemGroup>
Adicione uma referência ao projeto StringLibrary do projeto ShowCase:
cd ShowCase
dotnet add reference ../StringLibrary/StringLibrary.csproj
Executar o aplicativo
Em Solution Explorer, clique com o botão direito no projeto ShowCase e selecione Set como Projeto Inicial no menu contextual.
Pressione Ctrl+F5 para compilar e executar o programa sem depuração.
Experimente o programa inserindo strings e pressionando Enter, em seguida, pressione Enter para sair.
Usa a barra de menu superior para selecionar Executar>, Executar sem depuração.
Selecione C#.
Selecionar C#: ShowCase.
Se você receber um erro dizendo que nenhum programa C# está carregado, feche a pasta que você abriu e abra a pasta
ShowCase. Em seguida, tente executar o aplicativo novamente.Experimente o programa inserindo strings e pressionando Enter, em seguida, pressione Enter para sair.
A saída do terminal se parece com o exemplo a seguir:
Press <Enter> only to exit; otherwise, enter a string and press <Enter>: A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : No
Execute a aplicação ShowCase:
dotnet runExperimente o programa inserindo strings e pressionando Enter, em seguida, pressione Enter para sair.
A saída do terminal se parece com o exemplo a seguir:
Press <Enter> only to exit; otherwise, enter a string and press <Enter>: A string that starts with an uppercase letter Input: A string that starts with an uppercase letter Begins with uppercase? : Yes a string that starts with a lowercase letter Input: a string that starts with a lowercase letter Begins with uppercase? : No
Recursos adicionais
Recursos de limpeza
O GitHub apaga automaticamente o teu Codespace após 30 dias de inatividade. Se planeia explorar mais tutoriais nesta série, pode deixar o seu Codespace provisionado. Se estiveres pronto para visitar o site .NET para descarregar o SDK .NET, podes apagar o teu Codespace. Para eliminar o seu Codespace, abra uma janela do navegador e navegue até aos seus Codespaces. Vês uma lista dos teus codespaces na janela. Selecione os três pontos (...) na entrada para o espaço de código do tutorial de aprendizagem. Depois seleciona "Eliminar".
Próximos passos
Neste tutorial, você criou uma biblioteca de classes. No próximo tutorial, aprenderá como realizar testes unitários na biblioteca de classes.
Ou pode saltar os testes unitários automatizados e aprender a partilhar a biblioteca criando um pacote NuGet:
Ou, aprende a publicar uma aplicação de consola. Se você publicar o aplicativo de console a partir da solução criada neste tutorial, a biblioteca de classes o acompanhará como um arquivo .dll .