FastEndpoints C# (.NET) पूरी गाइड: उदाहरणों के साथ

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

FastEndpoints C# (.NET): उदाहरणों के साथ पूरी गाइड

FastEndpoints .NET (ASP.NET Core) प्लेटफॉर्म पर वेब-API बनाने के लिए एक आधुनिक, हाई-परफॉर्मेंस लाइब्रेरी है, जो REPR (Request-Endpoint-Response) पैटर्न को लागू करती है। पारंपरिक MVC (Model-View-Controller) या Minimal API के विपरीत, FastEndpoints एक साफ, मॉड्यूलर और टेस्ट करने योग्य आर्किटेक्चर प्रदान करता है, जहां प्रत्येक एंडपॉइंट एक अलग क्लास होता है जो एक विशिष्ट रिक्वेस्ट को संभालने के लिए जिम्मेदार होता है।

इस लाइब्रेरी की आवश्यकता क्यों है? दर्जनों और सैकड़ों एंडपॉइंट वाले बड़े प्रोजेक्ट्स में, पारंपरिक कंट्रोलर जल्दी ही "गॉड ऑब्जेक्ट्स" में बदल जाते हैं जिनमें फूली हुई लॉजिक होती है। FastEndpoints इस समस्या को हल करता है, डेवलपर को स्पष्ट रूप से जिम्मेदारियों को अलग करने के लिए मजबूर करता है: एक क्लास - एक एंडपॉइंट। यह कोड के रखरखाव, टेस्टिंग और पुन: उपयोग को सरल बनाता है। इसके अलावा, लाइब्रेरी नेटिव System.Text.Json पर बनी है और अधिकतम परफॉर्मेंस के लिए ऑप्टिमाइज़ की गई है, जो इसे .NET इकोसिस्टम में API बनाने के लिए सबसे तेज़ लाइब्रेरी में से एक बनाती है।

FastEndpoints माइक्रोसर्विस आर्किटेक्चर, Domain-Driven Design (DDD) और Clean Architecture वाले प्रोजेक्ट्स के लिए आदर्श है। यह बिल्ट-इन वैलिडेशन (FluentValidation के माध्यम से), Swagger/OpenAPI सपोर्ट, एरर हैंडलिंग, कैशिंग, एंडपॉइंट वर्जनिंग और बहुत कुछ प्रदान करता है, जिससे डेवलपर को बॉयलरप्लेट कोड लिखने से मुक्ति मिलती है।

इंस्टॉलेशन

FastEndpoints NuGet के माध्यम से इंस्टॉल होता है। आपको .NET SDK 6.0 या उससे ऊपर की आवश्यकता होगी। टर्मिनल में निम्नलिखित कमांड में से एक चलाएं:

dotnet add package FastEndpoints

Swagger के साथ इंटीग्रेशन के लिए (वैकल्पिक, लेकिन अनुशंसित):

dotnet add package FastEndpoints.Swagger

FluentValidation के उपयोग के लिए (अनुशंसित):

dotnet add package FluentValidation

त्वरित शुरुआत — न्यूनतम कार्यशील उदाहरण

एक नया ASP.NET Core Web API प्रोजेक्ट बनाएं (खाली या कंट्रोलर के साथ — इससे कोई फर्क नहीं पड़ता, हम वैसे भी FastEndpoints का उपयोग करेंगे)।

चरण 1: Program.cs सेटअप करें

using FastEndpoints;

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddFastEndpoints(); // FastEndpoints सर्विसेज रजिस्टर करें

var app = builder.Build();
app.UseFastEndpoints(); // मिडलवेयर कनेक्ट करें
app.Run();

चरण 2: एंडपॉइंट बनाएं

एक Endpoints फोल्डर बनाएं और उसके अंदर HelloEndpoint.cs फाइल बनाएं:

using FastEndpoints;

namespace MyApi.Endpoints;

public class HelloEndpoint : Endpoint<EmptyRequest, string>
{
    public override void Configure()
    {
        Get("/api/hello"); // /api/hello पर HTTP GET मेथड
        AllowAnonymous();  // बिना ऑथराइजेशन के एक्सेसिबल
    }

    public override async Task HandleAsync(EmptyRequest req, CancellationToken ct)
    {
        await SendAsync("Hello, World!", cancellation: ct);
    }
}

चरण 3: चलाएं

एप्लिकेशन चलाएं (dotnet run) और ब्राउज़र में http://localhost:5000/api/hello खोलें। आपको रिस्पॉन्स दिखेगा: Hello, World!

मुख्य क्लासेस और मेथड्स

नीचे FastEndpoints लाइब्रेरी के प्रमुख क्लासेस और मेथड्स उपयोग के उदाहरणों के साथ दिए गए हैं।

1. क्लास Endpoint<TRequest, TResponse>

सिग्नेचर: public abstract class Endpoint<TRequest, TResponse> : BaseEndpoint where TRequest : notnull, new()

यह क्या करता है: एंडपॉइंट बनाने के लिए बेस क्लास। यह रिक्वेस्ट टाइप (TRequest) और रिस्पॉन्स टाइप (TResponse) को स्वीकार करता है।

उदाहरण:

public class CreateUserEndpoint : Endpoint<CreateUserRequest, Us

अनुशंसाएँ