32Days Asp.net Core 6 App by Technology Keeda
Step 1. Create Asp.net Mvc core crud app MyAppWeb using code 1st approach.
Create Model
Category.cs
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
namespace MyApp.Models
{
public class Category
{
[Key]
public int Id { get; set; }
[Required]
public string Name { get; set; }
[DisplayName("Display Oder")]
public int DisplayOder { get; set; }
public DateTime CreatedDateTime { get; set; } = DateTime.Now;
}
}
Install package or just copy n paste in right click on project go to edit file getting Item group in file
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="7.0.8" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.8">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.8" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.8">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="6.0.14" />
</ItemGroup>
appsettings.json
,
"ConnectionStrings": {
"DefaultConnection": "Server=DESKTOP-JJDFFJA\\SQLEXPRESS; Database=Db_MyAppWeb1; Trusted_Connection=true; MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=True"
}
Program.cs
builder.Services.AddScoped<IUnitOfWork, UnitOfWork>();
builder.Services.AddDbContext<ApplicationDbContext>(options =>
{
options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection"));
});
CategoryController.cs
using Microsoft.AspNetCore.Mvc;
using MyWebAp.Data;
using MyWebAp.Models;
namespace MyWebAp.Controllers
{
public class CategoryController : Controller
{
private ApplicationDbContext _context;
public CategoryController(ApplicationDbContext context)
{
_context = context;
}
public IActionResult Index()
{
IEnumerable<Category> categories = _context.Categories;
return View(categories);
}
[HttpGet]
public IActionResult Create()
{
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Create(Category category)
{
if (ModelState.IsValid)
{
_context.Categories.Add(category);
_context.SaveChanges();
TempData["Sucess"] = "Category Created Sucessfully";
return RedirectToAction("Index");
}
return View(category);
}
[HttpGet]
public IActionResult Edit(int? id)
{
if (id == null || id == 0)
{
return NotFound();
}
var category = _context.Categories.Find(id);
if (category == null)
{
return NotFound();
}
return View(category);
}
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Edit(Category category)
{
if (ModelState.IsValid)
{
_context.Categories.Update(category);
_context.SaveChanges();
TempData["Sucess"] = "Category Updated Sucessfully";
return RedirectToAction("Index");
}
return RedirectToAction("Index");
}
[HttpGet]
public IActionResult Delete(int? id)
{
if (id == null || id == 0)
{
return NotFound();
}
var category = _context.Categories.Find(id);
if (category == null)
{
return NotFound();
}
return View(category);
}
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public IActionResult DeleteData(int? id)
{
var category = _context.Categories.Find(id);
if (category == null)
{
return NotFound();
}
_context.Categories.Remove(category);
_context.SaveChanges();
TempData["Sucess"] = "Category Deleted Sucessfully";
return RedirectToAction("Index");
//return RedirectToAction("Index");
}
}
}
Right click on solution Create new Project select class library fie ( Project name- MyApp.Models)
create class library model file name- Catogry.cs (ya create kare ya drag n drop kre MyAppWeb k project model folder se model n error file ko drag n drop kre MyAppWeb project se phir namespace thik kare )
Catogry.cs
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
namespace MyApp.Models
{
public class Category
{
[Key]
public int Id { get; set; }
[Required]
public string Name { get; set; }
[DisplayName("Display Oder")]
public int DisplayOder { get; set; }
public DateTime CreatedDateTime { get; set; } = DateTime.Now;
}
}
Create MyApp.DataAccessLayer project & drag n drop Data folder from MyAppWeb project & create Infrastructure folder for Repository (sub folder IRepository n Repository )
32Days Asp.net Core 6 App by Technology Keeda
Reviewed by Rikesh
on
July 13, 2023
Rating:
No comments: