Nuget: Difference between revisions

From Chorke Wiki
Jump to navigation Jump to search
Line 92: Line 92:
* [https://docs.microsoft.com/en-us/nuget/tools/cli-ref-setapikey NuGet CLI setapikey command]
* [https://docs.microsoft.com/en-us/nuget/tools/cli-ref-setapikey NuGet CLI setapikey command]
* [https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli Create and publish a package]
* [https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli Create and publish a package]
* [https://docs.microsoft.com/en-us/nuget/create-packages/creating-a-package Create NuGet packages]
* [https://docs.microsoft.com/en-us/nuget/install-nuget-client-tools Install NuGet client tools]
* [https://docs.microsoft.com/en-us/nuget/install-nuget-client-tools Install NuGet client tools]
* [https://www.nuget.org/packages/NuGet.Repositories/4.2.0 NuGet Repositories]
* [https://www.nuget.org/packages/NuGet.Repositories/4.2.0 NuGet Repositories]

Revision as of 11:41, 12 July 2019

Mono Nuget

brew install mono
sudo curl -o /usr/local/bin/nuget.exe https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
'alias nuget="mono /usr/local/bin/nuget.exe"' >> ~/.bash_profile
brew uninstall mono
sudo rm -rf /usr/local/bin/nuget.exe
# vim  ~/.bash_profile and delete 'alias nuget="mono /usr/local/bin/nuget.exe"'
nuget setapikey 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a
nuget setapikey 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -source https://cdn.chorke.org/feed

Utility Project

mkdir Utility; cd Utility

dotnet new classlib -n Chorke.Academia.Core.Utility
dotnet new xunit -n Chorke.Academia.Core.Utility.Tests

dotnet new sln -n Utility
dotnet sln add Chorke.Academia.Core.Utility/Chorke.Academia.Core.Utility.csproj

cd Chorke.Academia.Core.Utility.Tests/
dotnet add reference ../Chorke.Academia.Core.Utility/Chorke.Academia.Core.Utility.csproj
cd ..; dotnet sln add Chorke.Academia.Core.Utility.Tests/Chorke.Academia.Core.Utility.Tests.csproj
using System;
using System.Globalization;

namespace Chorke.Academia.Core.Utility
{
    public class DateUtil
    {
        public const string DD_MM_YYYY = "dd/MM/yyyy";

        public static string Format(DateTime date) => Format(date, DD_MM_YYYY);
        public static string Format(DateTime date, string format) => date.ToString(DD_MM_YYYY);

        public static DateTime Parse(String date) => Parse(date, DD_MM_YYYY);
        public static DateTime Parse(String date, string format) => DateTime.ParseExact(date, format, CultureInfo.InvariantCulture);
    }
}
using System;
using Xunit;
using Chorke.Academia.Core.Utility;

namespace Chorke.Academia.Core.Utility.Tests
{
    public class DateUtilTest
    {
        [Fact]
        public void FormatTest()
        {
            DateTime date = new DateTime(1983, 10, 10);
            String actual = DateUtil.Format(date, DateUtil.DD_MM_YYYY);
            Assert.Equal("10/10/1983", actual);
        }
    }
}
dotnet publish Chorke.Academia.Core.Utility
dotnet test Chorke.Academia.Core.Utility.Tests
dotnet publish Chorke.Academia.Core.Utility.Tests

cd Chorke.Academia.Core.Utility
dotnet pack -c Release /p:PackageVersion=1.0.0; cd bin/Release/
dotnet nuget push Chorke.Academia.Core.Utility.1.0.0.nupkg -k <nuget api key> -s https://www.nuget.org/

References