Consuming, Building and Publishing private NuGet Pacakges to GitHub Packages with Azure DevOps Pipelines

If you are working on several closed-source projects and have many internal libraries that you wish to share as NuGet packages, you’d be looking for a way to privately host those packages. We had been using Azure DevOps Artifact Feed for this purpose. However, with the release of GitHub Packages we’ve started moving our packages there as all our devs were already on GitHub and we didn’t have to reprovision AzDO Package Management feature for those who weren’t really creating or maintaining build pipelines.

Following is what we did to keep our build pipelines in Azure DevOps and post the NuGet packages that they built in to GitHub Packages. Continue reading “Consuming, Building and Publishing private NuGet Pacakges to GitHub Packages with Azure DevOps Pipelines”

Authorizing SuiteTalk Web Services apps with NetSuite’s Three-Step Authorization Flow

With version 2019.2, NetSuite started rolling out a new feature called the Three-Step TBA Authorization Flow. This feature will undoubtedly take a lot of the pain out of using TBA for Web Services for both NetSuite Admins and end-users. As App developers, we will also benefit from the fact that with this flow, NetSuite takes back the complexity of handling 2FA and SSO login options, leaving us only a few simple steps to implement.

Before we look at the internals of how this flow works, lets go through the sample app and see this flow in action. Continue reading “Authorizing SuiteTalk Web Services apps with NetSuite’s Three-Step Authorization Flow”

Consuming NetSuite WebServices in .NET Core / .NET Standard 2.0+

Full Disclosure: I’m one of the authors of the Celigo ServiceManager for NetSuite library mentioned in this post.

A lot of my team’s development tasks revolve around SuiteTalk WebServices API. Because of this we’ve always maintained wrapper library around SuiteTalk, called the Celigo Service Manager. And we’ve been quite active in keep it open source and (reasonably) up to date. Historically, this library was meant primarily for monolithic web or desktop applications built on the full .NET Framework. In such applications, the library was useful for it’s built in retry logic, connection pooling capabilities and for the overall unified API it presented.

Recently, we’ve ported this concept over to .NET Standard and have been quite actively releasing updates via the repository as well as NuGet. The library is not “officially” supported by Celigo, Inc. but follows more of an open development process. This blog post should serve as a primer in to why and how to use the Celigo ServiceManager for NetSuite. Continue reading “Consuming NetSuite WebServices in .NET Core / .NET Standard 2.0+”

How to create a Template Mapping for “Fast New File (FNF)” extension

A “pattern”, in Fast New File extension, is basically a regular expression that  maps the file name you entered, to a Visual Studio Template. The extension has a few common patterns built in. These patterns,

  • Map MyType.cs to the C# Class template and creates a class named ​MyType.
  • Map IMyType.cs to the C# Interface template and creates an interface named MyType. etc.

A full list of built in mappings can be found in the source file in Fast new File git repo.

If you need custom mappings though, the good news is that this list of patterns are entirely overridable. Continue reading “How to create a Template Mapping for “Fast New File (FNF)” extension”

“Fast New File” for Visual Studio 2017 is Available on VS Marketplace

Get the Extension from the VS Marketplace.

Features

Features Inherited From AddAnyFile
  • Easily create any file with any file extension
  • Create files starting with a dot like ​.gitignore
  • Create deeper folder structures easily if required
  • Create folders when the entered name ends with a /
  • Use Shift+F2 keys to start creating a new file

Additional Features of FastNewFile

Continue reading ““Fast New File” for Visual Studio 2017 is Available on VS Marketplace”