Portal ogłoszeniowy w .NET

0

Tworzę pierwszą aplikację w .NET (portal z ogłoszeniami). Mam taki problem, chciałbym, żeby niezalogowany użytkownik mógł tylko przeglądać stronę, a nie tak, że może usuwać ogłoszenia itd.
Projekt jest na gicie, ale zalecałbym pobrać z dysku google, bo może nie zadziałać. Był problem z wrzuceniem projektu na git.
screenshot-20220606173601.png

Proszę o pomoc, jakąś wskazówkę.
https://github.com/netbp/ASP6mvc

2

Najprościej w widoku renderujesz tylko konkretne elementy dla zalogowanych użytkowników


@if (Request.IsAuthenticated)
{
    <h1>Render me</h1>
}

0

@sharper_99:
Mógłby Pan napisać prościej? Jestem kompletnym laikiem, i nie za bardzo wiem o co chodzi..

0
sharper_99 napisał(a):

Najprościej w widoku renderujesz tylko konkretne elementy dla zalogowanych użytkowników


@if (Request.IsAuthenticated)
{
    <h1>Render me</h1>
}

Zrobiłem tak, teraz po kliknięciu w jakąś opcję, przenosi do logowania. Niby lepiej, ale średnio nadal. Cóż, może zostawię, jak się nie uda czegoś wykombinować.

// POST: Offers/Delete/5
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public async Task<IActionResult> DeleteConfirmed(int id)
{
if (_context.Offers == null)
{
return Problem("Entity set 'ApplicationDbContext.Offers' is null.");
}
var offers = await _context.Offers.FindAsync(id);
if (offers != null)
{
_context.Offers.Remove(offers);
}

await _context.SaveChangesAsync();
return RedirectToAction(nameof(Index));
}

private bool OffersExists(int id)
{
return (_context.Offers?.Any(e => e.Id == id)).GetValueOrDefault();
}

Może mi jeszcze podpowiecie, teraz jako niezalogowany nie usunę ogłoszenia, ALE jako zalogowany mogę usuwać swoje i obce. Co zrobić, żeby nie dało się czyichś usuwać?

0

Gdzieś w tym kodzie który wrzuciłeś, w okolicy 11-13 linijki musisz zrobić sprawdzenie - jeśli zapisany właściciel offers nie jest aktualnie zalogowanym użytkownikiem to nie rób _context.Offers.Remove(offers);, tylko np. przekieruj go do strony błędu.

2
rm.xms napisał(a):

Mógłby Pan napisać prościej? Jestem kompletnym laikiem, i nie za bardzo wiem o co chodzi..

Po prostu to nie ten zamiar na ten czas i te kwalifikacje.
"Królu, w geometrii nie ma drogi specjalnej dla królów"

1 użytkowników online, w tym zalogowanych: 0, gości: 1