Quil İle Rich Text Editör

--LAYOUT HEAD KISMI-- <!-- Quill'in CSS dosyasını ekle --> <link href="https://cdn.quilljs.com/1.3.6/quill.snow.css" rel="stylesheet"> <!-- Quill'in JS dosyasını ekle --> <script src="https://cdn.quilljs.com/1.3.6/quill.js"></script> --CSHTML KISMI -- <!-- Body (Quill ile) --> <div class="form-group"> <label asp-for="Body" class="control-label"></label> <!-- Quill editörünü başlatacağımız div --> <div id="editor" style="height: 200px;"></div> <!-- Gizli input alanı, form gönderildiğinde Quill içeriği buraya aktarılacak --> <input type="hidden" asp-for="Body" id="hiddenContent" /> <span asp-validation-for="Body" class="text-danger"></span> </div> --CSHTML SCRİPTS KISMI-- <script> var quill = new Quill('#editor', { theme: 'snow' }); var form = document.querySelector('form'); form.onsubmit = function () { var content = document.querySelector('#hiddenContent'); content.value = quill.root.innerHTML; }; </script>

23.09.2024 23:17:03

Entity ile Düzenleme ve Dialog olarak çıkartma

--CONTROLLER-- public IActionResult Edit(int id) { return View(_context.Todos.Find(id)); } [HttpPost] public IActionResult Edit(int id, string task) { var todo = _context.Todos.Find(id); todo.Task = task; todo.Updated = DateTime.Now; //_context.Todos.Update(model); _context.SaveChanges(); return RedirectToAction("index"); } --VİEW-- <a href="/home/Edit/@todo.Id" class="edit btn btn-warning">Düzenle</a> --VİEW SCRİPT-- <dialog id="dialog"></dialog> @section Scripts { <script> document.querySelectorAll('.edit') .forEach(x => x.addEventListener('click', handleEditClick)); function handleEditClick(e) { e.preventDefault(); $('#dialog').load(this.href); dialog.showModal(); } </script> } --VİEW Edit.cshtml-- @model Todo @{ Layout = null; } <form asp-action="Edit"> <input asp-for="Id" type="hidden" /> <input required asp-for="Task" /> <input asp-for="IsCompleted" type="hidden" /> <button class="btn btn-primary">Güncelle</button> </form>

16.09.2024 16:29:04

Entity ile Silme

--CONTROLLER-- public IActionResult Delete(int id) { var todo = _context.Todos.Find(id); if (todo != null) { _context.Todos.Remove(todo); _context.SaveChanges(); } TempData["Del"] = "Silinmiştir"; return RedirectToAction("index"); } --VİEW-- <form method="post" action="/home/delete"> <input type="hidden" name="Id" value="@todo.Id" /> <button type="submit" onclick="return confirm('Emin misiniz?')" class="btn btn-danger btn-sm">Sil</button> </form>

16.09.2024 16:25:51

Entity ile bool değer oluşturma

--Controller-- public IActionResult IsComplate(int id) { var todo = _context.Todos.Find(id); if (todo != null) { todo.IsCompleted = !todo.IsCompleted; _context.Todos.Update(todo); _context.SaveChanges(); } TempData["complate"] = "Güncellenmiştir"; return RedirectToAction("index"); } --VİEW-- <td>@(todo.IsCompleted ? "Tamamlandı" : "Tamamlanmadı")</td> <td> <form method="post" action="/home/IsComplate"> <input type="hidden" name="Id" value="@todo.Id" /> <button type="submit" class="btn btn-primary btn-sm mb-2">Durum</button> </form>

16.09.2024 16:23:53

Entity ile son eklenen tarihe göre sıralama

return View(_context.Codes.OrderByDescending(x => x.Created).ToList());

16.09.2024 16:17:27

Entity ile ekleme

public IActionResult Add(Code model) { if (ModelState.IsValid) { _context.Codes.Add(model); _context.SaveChanges(); TempData["mesaj"] = "Yeni kod eklenmiştir"; } return RedirectToAction("index");

16.09.2024 16:15:07

Süreli bildirim msjı

--CONTROLLER KISMI-- TempData["mesaj"] = "Yeni kod eklenmiştir"; --INDEX KISMI-- @if (TempData["mesaj"] != null) { <div class="alert alert-success text-center rounded-pill alert-custom" role="alert"> <strong>@TempData["mesaj"]</strong> </div> } --INDEX SCRİPTS KISMI @section Scripts{ <script> $('.alert').delay(1500).fadeOut(); </script> }

16.09.2024 14:31:13