नेट कोर वेबएपीआई में, आप 201 कोड को वापस करने के लिए इस पद्धति का उपयोग करते हैं, जिसका अर्थ है कि ऑब्जेक्ट बनाया गया था।
[Microsoft.AspNetCore.Mvc.NonAction]
public virtual Microsoft.AspNetCore.Mvc.CreatedAtRouteResult CreatedAtRoute (string routeName, object routeValues, object content);
जैसा कि आप ऊपर देख सकते हैं, CreatedAtRoute 3 पैरामीटर प्राप्त कर सकता है:
मार्गनाम
वह नाम है जिसे आपको उस विधि पर रखना होगा जो यूआरआई होगा जो उस संसाधन को बनाने के बाद प्राप्त करेगा।
pathValues
यह वह मान है जिसमें नामित मार्ग पर GET विधि को पारित किया जाएगा। इसका उपयोग निर्मित वस्तु को वापस करने के लिए किया जाएगा
सामग्री
यह वह वस्तु है जिसे बनाया गया था।
उपरोक्त उदाहरण एक सरल GET विधि के साथ एक सरल नियंत्रक के दो तरीकों के कार्यान्वयन को बंधुआ नाम और POST विधि के साथ बताता है जो एक नई वस्तु बनाता है।
namespace BastterAPI.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class CompanyController : Controller
{
private ICompanyRepository _companyRepository;
public CompanyController(ICompanyRepository companyRepository)
{
_companyRepository = companyRepository;
}
[HttpGet("{id}", Name="GetCompany")]
public IActionResult GetById(int id)
{
Company company = _companyRepository.Find(id);
if (company == null)
{
return NotFound();
}
return new ObjectResult(company);
}
[HttpPost]
public IActionResult Create([FromBody] Company company)
{
if (company == null)
{
return BadRequest();
}
_companyRepository.Add(company);
return CreatedAtRoute("GetCompany", new Company { CompanyID = company.CompanyID }, company);
}
}
}
जरूरी
ध्यान दें कि CreatedAtRoute (pathName) पर पहला पैरामीटर, गेट मेथड में नाम की परिभाषा पर समान होना चाहिए।
दूसरे पैरामीटर पर ऑब्जेक्ट के लिए आवश्यक फ़ील्ड होनी चाहिए जिसका उपयोग आप Get विधि पर संसाधन को पुनः प्राप्त करने के लिए करते हैं, आप कह सकते हैं कि यह ऑब्जेक्ट का एक सबसेट है जो स्वयं बनाया गया है
अंतिम पैरामीटर यह है कि कंपनी का अनुरोध पूर्ण रूप में निकाय अनुरोध में प्राप्त होता है।
अंत में
अंतिम परिणाम के रूप में, जब पोस्ट एक नई कंपनी बनाने के लिए इस एपीआई के लिए बनाई गई है, तो आप 'एपीआई / कंपनी / {आईडी} जैसे एक मार्ग को वापस कर देंगे जो आपके लिए नए बनाए गए संसाधन पर लौटेगा