.NET Core - Criar Biblioteca .NET Standard
Uma biblioteca de classes define os tipos e métodos que podem ser chamados de qualquer aplicativo.
Uma biblioteca de classes desenvolvida com o .NET Core oferece suporte à Biblioteca .NET Standard, que permite que sua biblioteca seja chamada por qualquer plataforma .NET que ofereça suporte a essa versão da Biblioteca .NET Standard.
Quando terminar sua biblioteca de classes, você pode decidir se deseja distribuí-la como um componente de terceiros ou se deseja incluí-la como um componente que vem junto com um ou mais aplicativos.
Vamos começar adicionando um projeto de biblioteca de classes em nosso aplicativo de console; clique com o botão direito nosrc pasta no Solution Explorer e selecione Add → New Project…
No Add New Project caixa de diálogo, escolha o nó .NET Core e escolha o modelo de projeto Class Library (.NET Core).
Na caixa de texto Nome, digite "UtilityLibrary" como o nome do projeto, como mostra a figura a seguir.
Clique em OK para criar o projeto de biblioteca de classes. Assim que o projeto for criado, vamos adicionar uma nova classe. Clique com o botão direito emproject no Solution Explorer e selecione Add → Class...
Selecione a classe no painel do meio e insira StringLib.cs no nome e campo e clique em Add. Depois que a classe for adicionada, substitua o código a seguir no arquivo StringLib.cs.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace UtilityLibrary {
public static class StringLib {
public static bool StartsWithUpper(this String str) {
if (String.IsNullOrWhiteSpace(str))
return false;
Char ch = str[0];
return Char.IsUpper(ch);
}
public static bool StartsWithLower(this String str) {
if (String.IsNullOrWhiteSpace(str))
return false;
Char ch = str[0];
return Char.IsLower(ch);
}
public static bool StartsWithNumber(this String str) {
if (String.IsNullOrWhiteSpace(str))
return false;
Char ch = str[0];
return Char.IsNumber(ch);
}
}
}
A biblioteca da classe, UtilityLibrary.StringLib, contém alguns métodos como, StartsWithUpper, StartsWithLowere StartsWithNumber que retorna um valor booleano que indica se a instância da string atual começa com maiúscula, minúscula e número, respectivamente.
No .NET Core, o Char.IsUpper o método retorna true se um caractere estiver em maiúsculas, o método Char.IsLower retorna true se um caractere estiver em minúsculas, e da mesma forma o método Char.IsNumber retorna true se um caractere for numérico.
Na barra de menus, escolha Build, Build Solution. O projeto deve ser compilado sem erros.
Nosso projeto de console do .NET Core não tem acesso à nossa biblioteca de classes.
Agora, para consumir essa biblioteca de classes, precisamos adicionar referência a essa biblioteca de classes em nosso projeto de console.
Para fazer isso, expanda FirstApp e clique com o botão direito em References e selecione Add Reference…
Na caixa de diálogo Reference Manager, selecione UtilityLibrary, nosso projeto de biblioteca de classes e clique em OK.
Vamos agora abrir o arquivo Program.cs do projeto do console e substituir todo o código pelo código a seguir.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using UtilityLibrary;
namespace FirstApp {
public class Program {
public static void Main(string[] args) {
int rows = Console.WindowHeight;
Console.Clear();
do {
if (Console.CursorTop >= rows || Console.CursorTop == 0) {
Console.Clear();
Console.WriteLine("\nPress <Enter> only to exit; otherwise, enter a string and press <Enter>:\n");
}
string input = Console.ReadLine();
if (String.IsNullOrEmpty(input)) break;
Console.WriteLine("Input: {0} {1,30}: {2}\n", input, "Begins with uppercase? ",
input.StartsWithUpper() ? "Yes" : "No");
} while (true);
}
}
}
Vamos agora executar seu aplicativo e você verá a seguinte saída.
Para melhor compreensão, vamos usar os outros métodos de extensão de sua biblioteca de classes em seu projeto.