Before exam
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
namespace apiasp.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class ProductController : Controller
{
public static List<Product> Products = new List<Product>()
{
new Product { Id = 1, Name ="Rice", Price=3434.3},
new Product { Id = 2, Name ="Sugar", Price=343},
new Product { Id = 3, Name ="Salt", Price=444}
};
// GET api/product
[HttpGet]
public List<Product> GetProducts()
{
return Products;
}
// POST api/product
[HttpPost]
public IActionResult AddProduct([FromBody] Product product)
{
if (product == null)
{
return BadRequest("Product object is null");
}
Products.Add(product);
return Ok(product);
}
// PUT api/product/5
[HttpPut("{id}")]
public IActionResult UpdateProduct(int id, [FromBody] Product product)
{
var existingProduct = Products.Find(p => p.Id == id);
if (existingProduct == null)
{
return NotFound();
}
existingProduct.Name = product.Name;
existingProduct.Price = product.Price;
return Ok(existingProduct);
}
// DELETE api/product/5
[HttpDelete("{id}")]
public IActionResult DeleteProduct(int id)
{
var product = Products.Find(p => p.Id == id);
if (product == null)
{
return NotFound();
}
Products.Remove(product);
return Ok(product);
}
}
}
Product.cs:
namespace apiasp
{
public class Product
{
public int Id { get; set; }
public string? Name { get; set; }
public double Price { get; set; }
}
}
Procedure:
USE Bulky;
-- Select all records from the Categories table
SELECT * FROM Categories;
-- Create a stored procedure named AllRecords to select all records from the Categories table
CREATE PROCEDURE AllRecords
AS
BEGIN
SELECT * FROM Categories;
END;
EXEC AllRecords;
EF:
Data = ApplicationDbContext.cs
using Bulky.Models;
using Microsoft.EntityFrameworkCore;
namespace Bulky.Data
{
public class ApplicationDbContext : DbContext
{
public ApplicationDbContext(DbContextOptions<ApplicationDbContext>
options): base(options)
{
}
public DbSet <Category> Categories { get; set; }
}
}
model = Category.cs
using System.ComponentModel.DataAnnotations;
namespace Bulky.Models
{
public class Category
{
public int Id { get; set; }
public string? Name { get; set; }
public int DisplayOrder { get; set; }
}
}
"ConnectionStrings": {
"DefaultConnection": "Server=ERYTYM\\SQLEXPRESS;Database=Bulky;Trusted_Connection=True;TrustServerCertificate=True;"
}
}
builder.Services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection")));
Comments
Post a Comment