On digital platforms, chatbots are effective tools for enhancing user experience. Using ASP.NET (Web Forms) and SQL Server, I developed a basic e-commerce chatbot in this blog post that provides users with immediate responses about digital products like as planners, templates, and file kinds without the need for third-party AI libraries.

What does this Chatbot do?

  • Responds to product-related user queries using predefined keywords
  • Displays a friendly chat UI with user-bot interaction
  • Store each conversation in a chat log table for analysis
  • Uses SQL queries to retrieve responses based on keyword match
  • Fully functional without JavaScript or AJAX

Tech Stack

  • Frontend: ASP.NET Web Forms, Bootstrap 5
  • Backend: C# (.NET Framework), ADO.NET
  • Database: Microsoft SQL Server
  • Tables Used
    • BootResponses: Stores bot responses
    • ChatLogs: Stores chat history

UI Design (ChatBoot.aspx)
The chatbot is placed inside a styled Bootstrap card. Here's the code.

<div class="chat-wrapper">
    <div class="chat-header">
        <h5>E-Commerce Chatbot - Ask Me About Products!</h5>
    </div>

    <div class="chat-body" id="chatBody" runat="server">
    </div>

    <div class="chat-footer">
        <asp:TextBox
            ID="txtUserInput"
            runat="server"
            CssClass="form-control"
            placeholder="Type your question...">
        </asp:TextBox>

        <asp:Button
            ID="btnSend"
            runat="server"
            Text="Send"
            CssClass="btn btn-primary"
            OnClick="btnSend_Click" />
    </div>
</div>


Here’s how the UI looks.

Backend Logic (ChatBoot.aspx.cs)
On Page_Load, I show a friendly welcome message and sample questions.
chatBody.InnerHtml += @"
<div class='bot-msg'>
    Welcome! I'm your assistant bot for digital product shopping and selling.<br/>
    Try asking:
    <ul>
        <li>What templates do you have?</li>
        <li>How to list my product?</li>
        <li>Steps to buy a planner?</li>
    </ul>
</div>";


When the user clicks "Send", the bot checks the database for matching keywords.
string query = @"
    SELECT TOP 1 ResponseText
    FROM BootResponses
    WHERE @msg LIKE '%' + QuestionKeyword + '%'";


If a match is found, the bot replies with that message. Else, it shows a fallback message.

Also, both user messages and bot replies are logged into an SQL table ChatLogs.

 

 

Database Structure

BootResponses Table

Id QuestionKeyword ResponseText
1 Price Our digital product prices start at just $5.
2 Template We offer a variety of templates including resumes, portfolios, and business plans.
3 Hello Hi there! Welcome to our Digital Marketplace. How can I assist you today?
4 Hi Hello! I’m your Assistant bot. Ask me anything about our Digital Products.

It supports flexible keywords like "Price", "Template", "Upload", "Download", "Support", "Account", and many more.

ChatLogs Table

This logs every user query and bot reply for future review or enhancement.

Id UserMessage BotResponse Timestamp
1 How to buy and sell the digital product I'm sorry, I don't understand. 2025-04-29 16:09:58
2 How to create an Account? You can register a free account to manage your purchases and downloads. 2025-04-29 16:22:15

Highlights

 

  • Keyword Matching: Uses SQL LIKE to match partial questions.
  • Data Logging: Every conversation is stored in ChatLogs.
  • Responsive UI: Built with Bootstrap for a clean mobile-friendly interface.
  • Expandable: Easily add more QuestionKeyword and ResponseText entries.

Future Enhancements

  • Add AJAX to make the chatbot work without page refresh.
  • Train a basic ML model to better understand fuzzy queries.
  • Show suggestions dynamically as the user types.
  • Include voice-based input for accessibility.

Final Thoughts
This chatbot project demonstrates how even a basic keyword-based bot can serve as an interactive assistant for digital product platforms. It’s a great starting point if you're building your own chatbot and want to connect frontend UI with backend logic and a real database.