Creating Simple FAQ Chatbot using QnA Maker API

Chatbot could be utilized to automate business-to-client interactions such as for creating customer service application. Not every task could be handled by the bot though, but it could handle a lot of tasks before some of the more complex ones are delegated to human. However, a lot of heavy-lifting is required to create the AI the bot, such as processing the input of the users, implementing the language understanding, training the machine, testing it, etc. Sometimes, we just want a simple bot that answers to frequently asked questions (FAQs). But different people ask differently, right? And maybe we are wondering how are we able to make our bot understand different questions that might have the same meaning and context. For this scenario, we could make use of QnA Maker API. With QnA Maker API we can build, train, and publish a simple question and answer bot based on FAQ URLs, structured documents or editorial content in minutes. [Read more]

Customizing Token Based Authentication (OAuth) in ASP.NET Web API with Existing User Database

ASP.NET Web API project provides built-in OAuth provider to authorize and authenticate users by using access tokens. By default, the user information is stored using OWIN Middleware in the ASP.NET Identity system. The ASP.NET Identity system stores all the user information in a database where it utilizes Entity Framework Code First to implement all of its persistence mechanism. However, sometimes we were faced with a situation where we want to customize our web service to use another or existing database such as ASP.NET Membership, or perhaps our custom made user table. This tutorial will explain the step-by-step procedure to customize built-in token based authentication in ASP.NET Web API to our needs. [Read more]

10 C# Generic Collection Types You Should Know

It is every programmer dilemma to choose which collection type to use for a particular scenario. Even worse, some people use List<T> all the time whenever they encounter a collection of objects. You might have heard some other collection types such as the primitive Array (T[]), Dictionary<TKey, TValue>, Stack<T>, Queue<T>, etc. We will look at 10 of the most used generic collection types, its advantages, and disadvantages as well as the best type to choose for different scenarios. When processing a large amount of data, it is critical to choose the right type, as it will significantly affect the performance of your code. [Read more]