ASP.Net Core 2.1'de Kimlik <- AccountController'ı Özelleştir


89

Yükledim ASP.NET Core 2.1ancak yeni bir ASP.NET Core Web Applicationkullanarak ASP.NET Core 2.1oluşturmuş olsam da Individual User AccountsStore user accounts in-appAccountController veya Views'ı bulamıyorum.

Hala sorunsuz bir şekilde kayıt olabilir ve giriş yapabilirim ancak kodunu bulamıyorum, 2.0'da mevcuttu.

görüntü açıklamasını buraya girin


Yanıtlamakla ilgileniyorsanız burada bir soru sordum: stackoverflow.com/questions/51728881/… . Bir .NET Core 2.1 Identity Server 4 uygulamasında çıkış yapmakta zorlanıyorum. +1.
w0051977

Yanıtlar:


75

2.1'deki değişikliklerden biri , Razor Sınıf Kitaplıkları idi ve varsayılan kimlik, bireysel kimlik doğrulama şablonlarındaki bunlardan birinde yaşıyor. Uygulamanızda kodu özelleştirmek için kodun olmasını istiyorsanız, Visual Studio veya global scaffolder aracıyla onu yapılandırabilirsiniz. Her ikisinin de nasıl yapılacağı hakkında bu kılavuza bakın .


21
Denetleyiciler değil cshtml dosyaları oluşturabildim. Rehber bundan bahsetmedi, accountController'ın nasıl oluşturulacağı hakkında bir fikriniz var mı?
user1085907

7
Ah benim kötü .. alt
dosyadaki

16
bu neden bir gelişme ? İşleri gereksiz yere karıştırır.
liang

94

ASP.NET Core 2.1, yeniden kullanılabilir kitaplığın bir parçası olarak görünümler ve sayfalar oluşturmanıza olanak tanıyan Razor sınıf kitaplıkları adlı yeni özellik sunmuştur. ASP.NET Core Identity böyle bir RCL'ye taşındı. Bunu projenizde geçersiz kılabilirsiniz:

  1. Gönderen Solution Explorer ,> proje üzerinde sağ tıklayın Ekle > Yeni sorularla desteklenen Öğe .
  2. İskele Ekle iletişim kutusunun sol bölmesinden Kimlik > EKLE'yi seçin .
  3. In ADD Kimlik iletişim, geçersiz kılmak istediğiniz dosyaları seçin.
    1. Gerekirse düzeni seçin
    2. Veri bağlamı sınıfını seçin veya oluşturun .
  4. Hit ADD .

Daha fazla bilgi için belgeleri ziyaret edin .


1
"Yeni İskele Öğesi" ni almak için çözüme değil projeye sağ tıklamanız gerekir .. Bu
konudaki uyarılar

2
Bu hala Hesap Denetleyicisi alanına özelleştirilmiş alanlar eklediğimi söylemez, kayıt yönteminde onlara ihtiyacım olduğunu nasıl söyleyebilirim.
rogue39nin

Hey, jilet sayfası yerine denetleyicinin üzerine yazmak istersem? SPA kullanıyorum, bu yüzden denetleyiciyi geçersiz kılıp kılamayacağımdan emin değilim
Robert Tirta

kabul edilmiş bir cevap zaten kabul edildi, şimdi söylemeye gerek yok @WibisonoIndrawan
rogue39nin

7

Benim çözümüm, .net core 2.0 ile proje oluşturmak ve ardından çerçeveyi 2.1'e ve tüm bağımlılığı en son sürüme güncellemektir.




2

Bildiğim kadarıyla, AccountController kodu Razor sayfalarına (ve arkasındaki kodlarına) taşındı ve varsayılanları kullanarak en iyi şekilde çalışıyor, böylece kodu özelleştirmek için Scaffold'u (yani dosyaları doğru yerde oluşturun) yepyeni bir Net Core 2.1 projesi, Visual Studio 2017'de Projeye sağ tıklayıp Add => New Scaffolded Item => Identity'yi seçerek bir Select Dialog'u açar. İstediğiniz sayfaları seçin ve işte başlayın. Bu yeni sayfalar varsayılanları otomatik olarak geçersiz kıldığından, istediğiniz sayfaları değiştirin ve Kimlik özellikli bir projede aynı yere kopyalayın. Bu, Kimlik kullanarak kimlik doğrulama / yetkilendirmeyi özelleştirmenin yeni yoludur, birçok kişinin bu önemli ilerlemeyi dikkate alıp almadığından emin değilsiniz!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.