Skip to main content

Dog food

Blue Buffalo is a premium dog food brand created by a family for their own beloved furry companion. Blue Buffalo offers nutritious recipes that include natural ingredients, high quality meat, fish or poultry, and fruits and vegetables. They produce healthy recipes for all stages of life, all sizes, and all activity levels. Introducing Blue Buffalo Bill and Jackie Bishop began to take an interest in pet health issues when their Airedale,Introducing Blue Buffalo Bill and Jackie Bishop began to take an interest in pet health issues when their    or all stages of life, all sizes, and all activity levels.      Airedale,

 



dotnet new mvc --auth none

HomeController.

using System;

using System.Collections.Generic;

using System.Diagnostics;

using System.Linq;

using System.Threading.Tasks;

using Microsoft.AspNetCore.Mvc;

using Microsoft.Extensions.Logging;

using ma.Models;

namespace ma.Controllers

{ public class HomeController : Controller

 {public String Index()

 {return "Hello Deepak";

}}}

[dotnet run]

StockQuote.cs

using System;

namespace ma.Models

{

 public class StockQuote

 {

 public string Symbol {get;set;}

 public int Price{get;set;}

 }}

Ma/views/home/

Index.cshtml

@{

 ViewData["Title"] = "Home Page";

}

<div

 Symbol: @Model.Symbol <br/>

 Price: $@Model.Price <br/>

</div>

AGAIN controller:

using System;

using System.Collections.Generic;

using System.Diagnostics;

using System.Linq;

using System.Threading.Tasks;

using Microsoft.AspNetCore.Mvc;

using Microsoft.Extensions.Logging;

using ma.Models;

namespace ma.Controllers

{

 public class HomeController : Controller

 {

 public async Task <IActionResult> Index()

 {

 var model=new StockQuote {Symbol="Hello", Price=3200};

 return View(model);

 }

 }

}

[dotnet run]

Building ASP.Net core REST API

[dotnet new webapi -o Glossary] (cmd 1)

[cd Glossary] [dotnet run] (cmd 1)

[curl –insecure https://localhost:7018/weatherforecast] (cmd 2)

ma2\Glossary\GlossaryItem.cs

//GlossaryItem.cs

namespace Glossary

{

 public class GlossaryItem

 {

 public string Term { get; set;}

 public string Definition { get; set;}

 }

}

Glossary\Controllers\ GlossaryController.cs

using System;

using System.Collections.Generic;

using Microsoft.AspNetCore.Mvc;

using System.IO;

namespace Glossary.Controllers

{

[ApiController]

[Route("api/[controller]")]

public class GlossaryController:ControllerBase

{

 private static List<GlossaryItem>Glossary=new List<GlossaryItem>

 {

 new GlossaryItem

 {

 Term="HTML", Definition="HyperText Markup language"

 },

 new GlossaryItem

 {

 Term="MVC", Definition="Model View Control"

 },

 new GlossaryItem

 {

 Term="OpenID", Definition="An Open Standard For Autehntication"

 }

 };

[HttpGet]

public ActionResult<List<GlossaryItem>>Get()

{

 return Ok(Glossary);

}

[HttpGet]

[Route("{term}")]

public ActionResult<GlossaryItem>Get(string term)

{

 var glossaryItem=Glossary.Find(item=>item.Term.Equals(term,StringComparison.InvariantCultureIgnoreCase));

 if(glossaryItem==null)

 {return NotFound();

 }else

 {

 return Ok(glossaryItem);

 }

}

[HttpPost]

public ActionResult Post(GlossaryItem glossaryItem)

{

var existingGlossaryItem=Glossary.Find(item=>item.Term.Equals(glossaryItem.Term,StringComparison.InvariantCultureIgnoreCase));

if (existingGlossaryItem!= null)

{

return Conflict("Cannnot create the term because it already exists");

}

else

{

 Glossary.Add(glossaryItem);

 var resourseUrl=Path.Combine(Request.Path.ToString(),Uri.EscapeUriString(glossaryItem.Term));

 return Created(resourseUrl,glossaryItem);

}

}

[HttpPut]

 public ActionResult Put(GlossaryItem glossaryItem)

 {

 var existingGlossaryItem=Glossary.Find(item=>item.Term.Equals(glossaryItem.Term,StringComparison.InvariantCultureIgnoreCase));

 if (existingGlossaryItem==null)

 {

 return BadRequest("Cannnot update a non existing Term");

 }

 else

 {

 existingGlossaryItem.Definition=glossaryItem.Definition;

 return Ok();

 }

 }

[HttpDelete]

[Route("{term}")]

public ActionResult Delete(string term)

{

 var glossaryItem=Glossary.Find(item=>item.Term.Equals(term,StringComparison.InvariantCultureIgnoreCase));

 if(glossaryItem==null)

 {

 return NotFound();

 }

 else

 {

 Glossary.Remove(glossaryItem);

 return NoContent();

 }

}

}

}

curl --insecure https://localhost:7018/api/glossary

Getting a single item

curl --insecure https://localhost:7018/api/glossary/MVC

Creating an Item:

curl --insecure -X PUT -d "{\"term\":\"MVC\",\"definition\":\"Modified record of Model View Controller.\"}" -H "Content-Type:application/json"

https://localhost:7018/api/glossary

Update Item:

curl --insecure -X PUT -d "{\"term\":\"MVC\",\"definition\":\"Modified record of Model View Controller.\"}" -H "Content-Type:application/json"

https://localhost:7018/api/glossary

Delete Item:

Command [ curl --insecure --request DELETE –url

Comments