ASP.NET Core Blazor proje yapısı
Uyarı
ASP.NET Core'un bu sürümü artık desteklenmiyor. Daha fazla bilgi için bkz . .NET ve .NET Core Destek İlkesi. Geçerli sürüm için bu makalenin .NET 8 sürümüne bakın.
Bu makalede, proje şablonundan Blazor oluşturulan bir Blazor uygulamayı oluşturan dosya ve klasörler açıklanmaktadır.
Blazor Web App
Blazor Web App proje şablonu: blazor
Proje Blazor Web App şablonu, hem sunucu tarafı işlenen hem de istemci tarafı işlenen herhangi bir web kullanıcı arabirimi stili oluşturmak için bileşenleri (.razor
) kullanmak Razor için tek bir başlangıç noktası sağlar. Mevcut Blazor Server ve Blazor WebAssembly barındırma modellerinin güçlü yönlerini sunucu tarafı işleme, akış işleme, gelişmiş gezinti ve form işleme ve bileşen temelinde veya Blazor WebAssembly kullanarak Blazor Server etkileşim ekleme özelliğiyle birleştirir.
Uygulama oluşturma işleminde hem istemci tarafı işleme (CSR) hem de etkileşimli sunucu tarafı işleme (etkileşimli SSR) seçilirse, proje şablonu Etkileşimli Otomatik işleme modunu kullanır. .NET uygulama paketi ve çalışma zamanı tarayıcıya indirilirken otomatik işleme modu başlangıçta etkileşimli SSR kullanır. .NET WebAssembly çalışma zamanı etkinleştirildikten sonra işleme CSR'ye geçer.
Şablon, Blazor Web App tek bir proje kullanarak hem statik hem de etkileşimli sunucu tarafı işlemeyi etkinleştirir. Etkileşimli WebAssembly işlemeyi de etkinleştirirseniz, proje WebAssembly tabanlı bileşenleriniz için ek bir istemci projesi (.Client
) içerir. İstemci projesinden oluşturulan çıkış tarayıcıya indirilir ve istemcide yürütülür. Etkileşimli WebAssembly veya Etkileşimli Otomatik işleme modlarını kullanan bileşenler projede .Client
bulunmalıdır.
Ana proje standart bir ASP.NET Core projesi olduğundan, projenin bileşen klasörü .Client
yapısı 'nin ana proje klasörü yapısından Blazor Web Appfarklıdır. Ana proje, ile ilgisi olmayan ASP.NET Core projeleri için diğer varlıkları dikkate Blazoralmalıdır. Projede .Client
istediğiniz bileşen klasörü yapısını kullanabilirsiniz. dilerseniz projedeki ana projenin .Client
bileşen klasörü düzenini yansıtabilirsiniz. Bileşenleri proje şablonunun kullandığından farklı klasörlere taşırsanız, ad alanlarının düzen dosyaları gibi varlıklar için ayarlamalar gerektirebileceğini unutmayın.
Bileşenler ve işleme modları hakkında daha fazla bilgi ASP.NET Core Razor bileşenleri ve ASP.NET Core Blazor işleme modları makalelerinde bulunur.
Uygulama oluşturma sırasında seçilen etkileşimli işleme moduna bağlı olarak, Layout
klasör klasördeki sunucu projesinde Components
veya projenin kökündedir .Client
. Klasör aşağıdaki düzen bileşenlerini ve stil sayfalarını içerir:
- Bileşen
MainLayout
(MainLayout.razor
), uygulamanın düzen bileşenidir. MainLayout.razor.css
, uygulamanın ana düzeninin stil sayfasıdır.NavMenu
Bileşen (NavMenu.razor
) kenar çubuğu gezintisi uygular. Bileşen, diğer bileşenlere yönelik gezinti bağlantılarını işleyen bileşenleri ()NavLink içerirNavLink
.Razor Bileşen kullanıcıya NavLink şu anda hangi bileşenin görüntülendiğini gösterir.NavMenu.razor.css
, uygulamanın gezinti menüsünün stil sayfasıdır.
Bileşen Routes
(Routes.razor
) sunucu projesinde veya projededir .Client
ve bileşeni kullanarak yönlendirmeyi Router ayarlar. İstemci tarafı etkileşimli bileşenler için, Router bileşen tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.
Components
Sunucu projesinin klasörü, uygulamanın sunucu tarafı Razor bileşenlerini barındırıyor. Paylaşılan bileşenler genellikle klasörün köküne Components
yerleştirilirken, düzen ve sayfa bileşenleri genellikle klasörün içindeki Components
klasörlere yerleştirilir.
Components/Pages
Sunucu projesinin klasörü, uygulamanın yönlendirilebilir sunucu tarafı Razor bileşenlerini içerir. Her sayfanın yolu yönergesi @page
kullanılarak belirtilir.
Bileşen (), HTML <head>
işaretlemesi, Routes
bileşeni ve etiketiyle uygulamanın kök bileşenidirBlazor<script>
.App.razor
App
Kök bileşen, uygulamanın yükleyebilen ilk bileşenidir.
_Imports.razor
Sunucu ve .Client
projelerin her birindeki bir dosya, ad alanları için Razor yönergeler gibi @using
her iki projenin bileşenleri için ortak Razor yönergeler içerir.
Properties
Sunucu projesinin klasörü, dosyada geliştirme ortamı yapılandırmasını barındırıyor launchSettings.json
.
Not
Profil, http
dosyadaki profilin https
önüne yer alır launchSettings.json
. Bir uygulama .NET CLI ile çalıştırıldığında, bulunan ilk profil olduğu http
için uygulama bir HTTP uç noktasında çalışır. Profil sırası, Linux ve macOS kullanıcıları için HTTPS'yi benimseme geçişini kolaylaştırır. veya seçeneğini (veya dotnet run
) komutuna geçirmek --launch-profile https
-lp https
zorunda kalmadan uygulamayı .NET CLI ile başlatmayı dotnet watch
tercih ediyorsanız, profili dosyadaki profilin https
http
üzerine yerleştirmeniz yeterlidir.
wwwroot
Sunucu projesinin klasörü, uygulamanın genel statik varlıklarını barındıran sunucu projesinin Web Kök klasörüdür.
Program.cs
Sunucu projesinin dosyası, projenin ASP.NET Core web uygulaması konağını ayarlayan ve hizmet kayıtları, yapılandırma, günlük kaydı ve istek işleme işlem hattı dahil olmak üzere uygulamanın başlangıç mantığını içeren giriş noktasıdır:
- Bileşenlere yönelik Razor hizmetler çağrılarak AddRazorComponentseklenir. AddInteractiveServerComponents Etkileşimli Sunucu bileşenlerinin işlenmesini desteklemek için hizmetler ekler. AddInteractiveWebAssemblyComponents Etkileşimli WebAssembly bileşenlerinin işlenmesini desteklemek için hizmetler ekler.
- MapRazorComponents kullanılabilir bileşenleri bulur ve varsayılan olarak
App
bileşen () olan uygulamanın kök bileşenini (yüklenen ilk bileşenApp.razor
) belirtir. AddInteractiveServerRenderMode uygulama için etkileşimli sunucu tarafı işlemeyi (etkileşimli SSR) yapılandırıyor. AddInteractiveWebAssemblyRenderMode uygulama için Interactive WebAssembly işleme modunu yapılandırıyor.
Sunucu veya projedeki uygulama ayarları dosyaları (appsettings.Development.json
, appsettings.json
) yapılandırma ayarlarını sağlar..Client
Sunucu projesinde, ayarlar dosyaları projenin kökündedir. Projede.Client
, ayarlar dosyaları Web Kök klasöründen wwwroot
(. ) kullanılır.
Projede .Client
:
Klasör
Pages
yönlendirilebilir istemci tarafı Razor bileşenleri içerir. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir.klasör
wwwroot
, uygulamanın genel statik varlıklarını barındıran projenin Web Kök klasörüdür.Client
.Dosya
Program.cs
, projenin WebAssembly konağını ayarlayan giriş noktasıdır ve hizmet kayıtları, yapılandırma, günlük kaydı ve istek işleme işlem hattı gibi projenin başlangıç mantığını içerir.
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor Web App uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Blazor Server
Blazor Server proje şablonları: blazorserver
, blazorserver-empty
Şablonlar, Blazor Server bir Blazor Server uygulama için ilk dosyaları ve dizin yapısını oluşturur:
blazorserver
Şablon kullanılırsa, uygulama aşağıdakilerle doldurulur:- Hava durumu tahmin hizmetinden (
WeatherForecastService
) veri yükleyen birFetchData
bileşenin tanıtım kodu ve birCounter
bileşenle kullanıcı etkileşimi. - Bootstrap ön uç araç seti.
- Hava durumu tahmin hizmetinden (
blazorserver-empty
Şablon kullanılırsa, uygulama tanıtım kodu ve Bootstrap olmadan oluşturulur.
Proje yapısı:
Data
klasör: UygulamanınFetchData
bileşenineWeatherForecast
örnek hava durumu verileri sağlayan sınıfını ve uygulamasınıWeatherForecastService
içerir.Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) ve bir Blazor Server uygulamanın kök Razor sayfasını içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdakileri içerir:_Host.cshtml
: Sayfa olarak Razor uygulanan uygulamanın kök sayfası:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Konak sayfası, kök
App
bileşenin (App.razor
) nerede işlendiğini belirtir.
Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.Error
bileşen (Error.razor
): Uygulamada işlenmeyen bir özel durum oluştuğunda işlenir.FetchData
bileşen (FetchData.razor
): Veri getirme sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.
Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Shared
klasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.MainLayout.razor.css
: Uygulamanın ana düzeni için stil sayfası.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.NavMenu.razor.css
: Uygulamanın gezinti menüsü için stil sayfası.SurveyPrompt
bileşen (SurveyPrompt.razor
): Blazor anket bileşeni.
wwwroot
klasör: Uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü._Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.appsettings.json
ve ortam uygulaması ayarları dosyaları: Uygulama için yapılandırma ayarlarını sağlayın.Program.cs
: Uygulamanın ASP.NET Core ana bilgisayarını ayarlayan ve hizmet kayıtları ve istek işleme işlem hattı yapılandırması dahil olmak üzere uygulamanın başlangıç mantığını içeren giriş noktası:- Uygulamanın bağımlılık ekleme (DI) hizmetlerini belirtir. Hizmetler çağrılarak AddServerSideBlazoreklenir ve
WeatherForecastService
örnekFetchData
bileşen tarafından kullanılmak üzere hizmet kapsayıcısına eklenir. - Uygulamanın istek işleme işlem hattını yapılandırıyor:
- MapBlazorHub , tarayıcıyla gerçek zamanlı bağlantı için bir uç nokta ayarlamak üzere çağrılır. Bağlantı, uygulamalara gerçek zamanlı web işlevselliği eklemeye yönelik bir çerçeve olan ile SignalRoluşturulur.
MapFallbackToPage("/_Host")
uygulamanın (Pages/_Host.cshtml
) kök sayfasını ayarlamak ve gezintiyi etkinleştirmek için çağrılır.
- Uygulamanın bağımlılık ekleme (DI) hizmetlerini belirtir. Hizmetler çağrılarak AddServerSideBlazoreklenir ve
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor Server uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Blazor Server proje şablonu: blazorserver
Şablon, Blazor Server bir Blazor Server uygulama için ilk dosyaları ve dizin yapısını oluşturur. Uygulama, kayıtlı bir hizmetten WeatherForecastService
veri yükleyen bir FetchData
bileşenin tanıtım koduyla ve bir bileşenle kullanıcı etkileşimiyle Counter
doldurulur.
Data
klasör: UygulamanınFetchData
bileşenineWeatherForecast
örnek hava durumu verileri sağlayan sınıfını ve uygulamasınıWeatherForecastService
içerir.Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) ve bir Blazor Server uygulamanın kök Razor sayfasını içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdakileri içerir:_Host.cshtml
: Sayfa olarak Razor uygulanan uygulamanın kök sayfası:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Konak sayfası, kök
App
bileşenin (App.razor
) nerede işlendiğini belirtir.
_Layout.cshtml
: Uygulamanın kök sayfasının_Host.cshtml
düzen sayfası.Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.Error
bileşen (Error.razor
): Uygulamada işlenmeyen bir özel durum oluştuğunda işlenir.FetchData
bileşen (FetchData.razor
): Veri getirme sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.
Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Shared
klasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.MainLayout.razor.css
: Uygulamanın ana düzeni için stil sayfası.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.NavMenu.razor.css
: Uygulamanın gezinti menüsü için stil sayfası.SurveyPrompt
bileşen (SurveyPrompt.razor
): Blazor anket bileşeni.
wwwroot
klasör: Uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü._Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.appsettings.json
ve ortam uygulaması ayarları dosyaları: Uygulama için yapılandırma ayarlarını sağlayın.Program.cs
: Uygulamanın ASP.NET Core ana bilgisayarını ayarlayan ve hizmet kayıtları ve istek işleme işlem hattı yapılandırması dahil olmak üzere uygulamanın başlangıç mantığını içeren giriş noktası:- Uygulamanın bağımlılık ekleme (DI) hizmetlerini belirtir. Hizmetler çağrılarak AddServerSideBlazoreklenir ve
WeatherForecastService
örnekFetchData
bileşen tarafından kullanılmak üzere hizmet kapsayıcısına eklenir. - Uygulamanın istek işleme işlem hattını yapılandırıyor:
- MapBlazorHub , tarayıcıyla gerçek zamanlı bağlantı için bir uç nokta ayarlamak üzere çağrılır. Bağlantı, uygulamalara gerçek zamanlı web işlevselliği eklemeye yönelik bir çerçeve olan ile SignalRoluşturulur.
MapFallbackToPage("/_Host")
uygulamanın (Pages/_Host.cshtml
) kök sayfasını ayarlamak ve gezintiyi etkinleştirmek için çağrılır.
- Uygulamanın bağımlılık ekleme (DI) hizmetlerini belirtir. Hizmetler çağrılarak AddServerSideBlazoreklenir ve
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor Server uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Blazor Server proje şablonu: blazorserver
Şablon, Blazor Server bir Blazor Server uygulama için ilk dosyaları ve dizin yapısını oluşturur. Uygulama, kayıtlı bir hizmetten WeatherForecastService
veri yükleyen bir FetchData
bileşenin tanıtım koduyla ve bir bileşenle kullanıcı etkileşimiyle Counter
doldurulur.
Data
klasör: UygulamanınFetchData
bileşenineWeatherForecast
örnek hava durumu verileri sağlayan sınıfını ve uygulamasınıWeatherForecastService
içerir.Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) ve bir Blazor Server uygulamanın kök Razor sayfasını içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdakileri içerir:_Host.cshtml
: Sayfa olarak Razor uygulanan uygulamanın kök sayfası:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Konak sayfası, kök
App
bileşenin (App.razor
) nerede işlendiğini belirtir.
Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.Error
bileşen (Error.razor
): Uygulamada işlenmeyen bir özel durum oluştuğunda işlenir.FetchData
bileşen (FetchData.razor
): Veri getirme sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.
Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Shared
klasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.MainLayout.razor.css
: Uygulamanın ana düzeni için stil sayfası.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.NavMenu.razor.css
: Uygulamanın gezinti menüsü için stil sayfası.SurveyPrompt
bileşen (SurveyPrompt.razor
): Blazor anket bileşeni.
wwwroot
klasör: Uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü._Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.appsettings.json
ve ortam uygulaması ayarları dosyaları: Uygulama için yapılandırma ayarlarını sağlayın.Program.cs
: Uygulamanın ASP.NET Core konasını ayarlayan giriş noktası.Startup.cs
: Uygulamanın başlangıç mantığını içerir.Startup
sınıfı iki yöntem tanımlar:ConfigureServices
: Uygulamanın bağımlılık ekleme (DI) hizmetlerini yapılandırıyor. Hizmetler çağrılarak AddServerSideBlazoreklenir veWeatherForecastService
örnekFetchData
bileşen tarafından kullanılmak üzere hizmet kapsayıcısına eklenir.Configure
: Uygulamanın istek işleme işlem hattını yapılandırıyor:- MapBlazorHub , tarayıcıyla gerçek zamanlı bağlantı için bir uç nokta ayarlamak üzere çağrılır. Bağlantı, uygulamalara gerçek zamanlı web işlevselliği eklemeye yönelik bir çerçeve olan ile SignalRoluşturulur.
MapFallbackToPage("/_Host")
uygulamanın (Pages/_Host.cshtml
) kök sayfasını ayarlamak ve gezintiyi etkinleştirmek için çağrılır.
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor Server uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Blazor Server proje şablonu: blazorserver
Şablon, Blazor Server bir Blazor Server uygulama için ilk dosyaları ve dizin yapısını oluşturur. Uygulama, kayıtlı bir hizmetten WeatherForecastService
veri yükleyen bir FetchData
bileşenin tanıtım koduyla ve bir bileşenle kullanıcı etkileşimiyle Counter
doldurulur.
Data
klasör: UygulamanınFetchData
bileşenineWeatherForecast
örnek hava durumu verileri sağlayan sınıfını ve uygulamasınıWeatherForecastService
içerir.Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) ve bir Blazor Server uygulamanın kök Razor sayfasını içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdakileri içerir:_Host.cshtml
: Sayfa olarak Razor uygulanan uygulamanın kök sayfası:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Konak sayfası, kök
App
bileşenin (App.razor
) nerede işlendiğini belirtir.
Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.Error
bileşen (Error.razor
): Uygulamada işlenmeyen bir özel durum oluştuğunda işlenir.FetchData
bileşen (FetchData.razor
): Veri getirme sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.
Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Shared
klasör: Aşağıdaki paylaşılan bileşenleri içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.SurveyPrompt
bileşen (SurveyPrompt.razor
): Blazor anket bileşeni.
wwwroot
klasör: Uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü._Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.appsettings.json
ve ortam uygulaması ayarları dosyaları: Uygulama için yapılandırma ayarlarını sağlayın.Program.cs
: Uygulamanın ASP.NET Core konasını ayarlayan giriş noktası.Startup.cs
: Uygulamanın başlangıç mantığını içerir.Startup
sınıfı iki yöntem tanımlar:ConfigureServices
: Uygulamanın bağımlılık ekleme (DI) hizmetlerini yapılandırıyor. Hizmetler çağrılarak AddServerSideBlazoreklenir veWeatherForecastService
örnekFetchData
bileşen tarafından kullanılmak üzere hizmet kapsayıcısına eklenir.Configure
: Uygulamanın istek işleme işlem hattını yapılandırıyor:- MapBlazorHub , tarayıcıyla gerçek zamanlı bağlantı için bir uç nokta ayarlamak üzere çağrılır. Bağlantı, uygulamalara gerçek zamanlı web işlevselliği eklemeye yönelik bir çerçeve olan ile SignalRoluşturulur.
MapFallbackToPage("/_Host")
uygulamanın (Pages/_Host.cshtml
) kök sayfasını ayarlamak ve gezintiyi etkinleştirmek için çağrılır.
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor Server uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Tek başına Blazor WebAssembly
Tek başına Blazor WebAssembly proje şablonu: blazorwasm
Şablon, Blazor WebAssembly tek başına Blazor WebAssembly bir uygulama için ilk dosyaları ve dizin yapısını oluşturur:
blazorwasm
Şablon kullanılırsa, uygulama aşağıdakilerle doldurulur:- Statik varlıktan (
weather.json
) veri yükleyen birWeather
bileşenin tanıtım kodu ve birCounter
bileşenle kullanıcı etkileşimi. - Bootstrap ön uç araç seti.
- Statik varlıktan (
- Şablon,
blazorwasm
örnek sayfalar ve stil olmadan da oluşturulabilir.
Proje yapısı:
Layout
klasör: Aşağıdaki düzen bileşenlerini ve stil sayfalarını içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.MainLayout.razor.css
: Uygulamanın ana düzeni için stil sayfası.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.NavMenu.razor.css
: Uygulamanın gezinti menüsü için stil sayfası.
Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.Weather
bileşen (Weather.razor
): Hava Durumu sayfasını uygular.
_Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Not
Profil,
http
dosyadaki profilinhttps
önüne yer alırlaunchSettings.json
. Bir uygulama .NET CLI ile çalıştırıldığında, bulunan ilk profil olduğuhttp
için uygulama bir HTTP uç noktasında çalışır. Profil sırası, Linux ve macOS kullanıcıları için HTTPS'yi benimseme geçişini kolaylaştırır. veya seçeneğini (veyadotnet run
) komutuna geçirmek--launch-profile https
-lp https
zorunda kalmadan uygulamayı .NET CLI ile başlatmayıdotnet watch
tercih ediyorsanız, profili dosyadaki profilinhttps
http
üzerine yerleştirmeniz yeterlidir.wwwroot
klasör: Yapılandırma ayarları ve örnek hava durumu verileri (sample-data/weather.json
) için ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.json
uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.html
sayfası, HTML sayfası olarak uygulanan uygulamanın kök sayfasıdır:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Sayfa, kök
App
bileşenin nerede işlendiğini belirtir. Bileşen, dom öğesinindiv
konumunda (id
app
<div id="app">Loading...</div>
ile işlenir.
Program.cs
: Uygulamanın WebAssembly konağını ayarlayan giriş noktası:- Bileşen
App
, uygulamanın kök bileşenidir. BileşenApp
, kök bileşen koleksiyonunadiv
builder.RootComponents.Add<App>("#app")
(<div id="app">Loading...</div>
wwwroot/index.html
içinde) sahipid
app
DOM öğesi olarak belirtilir. - Hizmetler eklenir ve yapılandırılır (örneğin,
builder.Services.AddSingleton<IMyDependency, MyDependency>()
).
- Bileşen
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor WebAssembly uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Blazor WebAssembly
Blazor WebAssembly proje şablonları: blazorwasm
, blazorwasm-empty
Şablonlar, Blazor WebAssembly bir Blazor WebAssembly uygulama için ilk dosyaları ve dizin yapısını oluşturur:
blazorwasm
Şablon kullanılırsa, uygulama aşağıdakilerle doldurulur:- Statik varlıktan (
weather.json
) veri yükleyen birFetchData
bileşenin tanıtım kodu ve birCounter
bileşenle kullanıcı etkileşimi. - Bootstrap ön uç araç seti.
- Statik varlıktan (
blazorwasm-empty
Şablon kullanılırsa, uygulama tanıtım kodu ve Bootstrap olmadan oluşturulur.
Proje yapısı:
Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.FetchData
bileşen (FetchData.razor
): Veri getirme sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.
Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Shared
klasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.MainLayout.razor.css
: Uygulamanın ana düzeni için stil sayfası.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.NavMenu.razor.css
: Uygulamanın gezinti menüsü için stil sayfası.SurveyPrompt
component () (SurveyPrompt.razor
.NET 7 veya önceki sürümlerinde ASP.NET Core): Blazor anket bileşeni.
wwwroot
klasör: Yapılandırma ayarları için ve ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.json
uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.html
sayfası, HTML sayfası olarak uygulanan uygulamanın kök sayfasıdır:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Sayfa, kök
App
bileşenin nerede işlendiğini belirtir. Bileşen, dom öğesinindiv
konumunda (id
app
<div id="app">Loading...</div>
ile işlenir.
_Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.Program.cs
: Uygulamanın WebAssembly konağını ayarlayan giriş noktası:- Bileşen
App
, uygulamanın kök bileşenidir. BileşenApp
, kök bileşen koleksiyonunadiv
builder.RootComponents.Add<App>("#app")
(<div id="app">Loading...</div>
wwwroot/index.html
içinde) sahipid
app
DOM öğesi olarak belirtilir. - Hizmetler eklenir ve yapılandırılır (örneğin,
builder.Services.AddSingleton<IMyDependency, MyDependency>()
).
- Bileşen
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor WebAssembly uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Barındırılan Blazor WebAssembly bir çözüm aşağıdaki ASP.NET Core projelerini içerir:
- "Client": Uygulama Blazor WebAssembly .
- "Server": Uygulama ve hava durumu verilerini istemcilere Blazor WebAssembly sunan bir uygulama.
- "Shared": Ortak sınıfları, yöntemleri ve kaynakları koruyan bir proje.
Çözüm, Visual Studio'daki proje şablonundanBlazor WebAssembly, ASP.NET Çekirdek Barındırılan onay kutusu seçili olarak veya .NET CLI dotnet new blazorwasm
komutu kullanılarak seçeneği kullanılarak -ho|--hosted
oluşturulur. Daha fazla bilgi için bkz . ASP.NET Core Blazoriçin Araçlar.
Barındırılan Blazor bir Webassembly çözümündeki istemci tarafı uygulamasının proje yapısı ("Client" proje), tek başına Blazor WebAssembly bir uygulamanın proje yapısıyla aynıdır. Barındırılan Blazor WebAssembly çözümdeki ek dosyalar:
- "Server" projesi, "" projesinin
FetchData
bileşenineClient hava durumu verilerini döndüren bir hava durumu tahmin denetleyicisiControllers/WeatherForecastController.cs
içerir. - "" projesinde "Shared" veServer "Client" projeleri için hava durumu verilerini temsil eden bir hava durumu tahmin sınıfı
WeatherForecast.cs
bulunur.
Blazor WebAssembly
Blazor WebAssembly proje şablonu: blazorwasm
Şablon, Blazor WebAssembly bir Blazor WebAssembly uygulama için ilk dosyaları ve dizin yapısını oluşturur. Uygulama, statik bir varlıktan weather.json
veri yükleyen bir FetchData
bileşenin tanıtım kodu ve bir bileşenle kullanıcı etkileşimi ile Counter
doldurulur.
Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.FetchData
bileşen (FetchData.razor
): Veri getirme sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.
Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Shared
klasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.MainLayout.razor.css
: Uygulamanın ana düzeni için stil sayfası.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.NavMenu.razor.css
: Uygulamanın gezinti menüsü için stil sayfası.SurveyPrompt
bileşen (SurveyPrompt.razor
): Blazor anket bileşeni.
wwwroot
klasör: Yapılandırma ayarları için ve ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.json
uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.html
sayfası, HTML sayfası olarak uygulanan uygulamanın kök sayfasıdır:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Sayfa, kök
App
bileşenin nerede işlendiğini belirtir. Bileşen, dom öğesinindiv
konumunda (id
app
<div id="app">Loading...</div>
ile işlenir.
_Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.Program.cs
: Uygulamanın WebAssembly konağını ayarlayan giriş noktası:- Bileşen
App
, uygulamanın kök bileşenidir. BileşenApp
, kök bileşen koleksiyonunadiv
builder.RootComponents.Add<App>("#app")
(<div id="app">Loading...</div>
wwwroot/index.html
içinde) sahipid
app
DOM öğesi olarak belirtilir. - Hizmetler eklenir ve yapılandırılır (örneğin,
builder.Services.AddSingleton<IMyDependency, MyDependency>()
).
- Bileşen
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor WebAssembly uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Barındırılan Blazor WebAssembly bir çözüm aşağıdaki ASP.NET Core projelerini içerir:
- "Client": Uygulama Blazor WebAssembly .
- "Server": Uygulama ve hava durumu verilerini istemcilere Blazor WebAssembly sunan bir uygulama.
- "Shared": Ortak sınıfları, yöntemleri ve kaynakları koruyan bir proje.
Çözüm, Visual Studio'daki proje şablonundanBlazor WebAssembly, ASP.NET Çekirdek Barındırılan onay kutusu seçili olarak veya .NET CLI dotnet new blazorwasm
komutu kullanılarak seçeneği kullanılarak -ho|--hosted
oluşturulur. Daha fazla bilgi için bkz . ASP.NET Core Blazoriçin Araçlar.
Barındırılan Blazor bir Webassembly çözümündeki istemci tarafı uygulamasının proje yapısı ("Client" proje), tek başına Blazor WebAssembly bir uygulamanın proje yapısıyla aynıdır. Barındırılan Blazor WebAssembly çözümdeki ek dosyalar:
- "Server" projesi, "" projesinin
FetchData
bileşenineClient hava durumu verilerini döndüren bir hava durumu tahmin denetleyicisiControllers/WeatherForecastController.cs
içerir. - "" projesinde "Shared" veServer "Client" projeleri için hava durumu verilerini temsil eden bir hava durumu tahmin sınıfı
WeatherForecast.cs
bulunur.
Blazor WebAssembly
Blazor WebAssembly proje şablonu: blazorwasm
Şablon, Blazor WebAssembly bir Blazor WebAssembly uygulama için ilk dosyaları ve dizin yapısını oluşturur. Uygulama, statik bir varlıktan weather.json
veri yükleyen bir FetchData
bileşenin tanıtım kodu ve bir bileşenle kullanıcı etkileşimi ile Counter
doldurulur.
Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.FetchData
bileşen (FetchData.razor
): Veri getirme sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.
Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Shared
klasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.MainLayout.razor.css
: Uygulamanın ana düzeni için stil sayfası.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.NavMenu.razor.css
: Uygulamanın gezinti menüsü için stil sayfası.SurveyPrompt
bileşen (SurveyPrompt.razor
): Blazor anket bileşeni.
wwwroot
klasör: Yapılandırma ayarları için ve ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.json
uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.html
sayfası, HTML sayfası olarak uygulanan uygulamanın kök sayfasıdır:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Sayfa, kök
App
bileşenin nerede işlendiğini belirtir. Bileşen, dom öğesinindiv
konumunda (id
app
<div id="app">Loading...</div>
ile işlenir.
_Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.Program.cs
: Uygulamanın WebAssembly konağını ayarlayan giriş noktası:- Bileşen
App
, uygulamanın kök bileşenidir. BileşenApp
, kök bileşen koleksiyonunadiv
builder.RootComponents.Add<App>("#app")
(<div id="app">Loading...</div>
wwwroot/index.html
içinde) sahipid
app
DOM öğesi olarak belirtilir. - Hizmetler eklenir ve yapılandırılır (örneğin,
builder.Services.AddSingleton<IMyDependency, MyDependency>()
).
- Bileşen
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor WebAssembly uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Barındırılan Blazor WebAssembly bir çözüm aşağıdaki ASP.NET Core projelerini içerir:
- "Client": Uygulama Blazor WebAssembly .
- "Server": Uygulama ve hava durumu verilerini istemcilere Blazor WebAssembly sunan bir uygulama.
- "Shared": Ortak sınıfları, yöntemleri ve kaynakları koruyan bir proje.
Çözüm, Visual Studio'daki proje şablonundanBlazor WebAssembly, ASP.NET Çekirdek Barındırılan onay kutusu seçili olarak veya .NET CLI dotnet new blazorwasm
komutu kullanılarak seçeneği kullanılarak -ho|--hosted
oluşturulur. Daha fazla bilgi için bkz . ASP.NET Core Blazoriçin Araçlar.
Barındırılan Blazor bir Webassembly çözümündeki istemci tarafı uygulamasının proje yapısı ("Client" proje), tek başına Blazor WebAssembly bir uygulamanın proje yapısıyla aynıdır. Barındırılan Blazor WebAssembly çözümdeki ek dosyalar:
- "Server" projesi, "" projesinin
FetchData
bileşenineClient hava durumu verilerini döndüren bir hava durumu tahmin denetleyicisiControllers/WeatherForecastController.cs
içerir. - "" projesinde "Shared" veServer "Client" projeleri için hava durumu verilerini temsil eden bir hava durumu tahmin sınıfı
WeatherForecast.cs
bulunur.
Blazor WebAssembly
Blazor WebAssembly proje şablonu: blazorwasm
Şablon, Blazor WebAssembly bir Blazor WebAssembly uygulama için ilk dosyaları ve dizin yapısını oluşturur. Uygulama, statik bir varlıktan weather.json
veri yükleyen bir FetchData
bileşenin tanıtım kodu ve bir bileşenle kullanıcı etkileşimi ile Counter
doldurulur.
Pages
klasör: Uygulamanın yönlendirilebilir Razor bileşenlerini (.razor
) içerirBlazor. Her sayfanın yolu yönergesi@page
kullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:Counter
bileşen (Counter.razor
): Sayaç sayfasını uygular.FetchData
bileşen (FetchData.razor
): Veri getirme sayfasını uygular.Index
component (Index.razor
): Sayfayı Home uygular.
Properties
klasör: DosyadalaunchSettings.json
geliştirme ortamı yapılandırmasını tutar.Shared
klasör: Aşağıdaki paylaşılan bileşenleri içerir:MainLayout
bileşen (MainLayout.razor
): Uygulamanın düzen bileşeni.NavMenu
bileşen (NavMenu.razor
): Kenar çubuğu gezintisi uygular. Diğer Razor bileşenlereNavLink
gezinti bağlantılarını işleyen bileşenini ()NavLink içerir. Bileşen NavLink , bileşeni yüklendiğinde seçili durumu otomatik olarak gösterir ve bu da kullanıcının şu anda hangi bileşenin görüntülendiğini anlamasına yardımcı olur.SurveyPrompt
bileşen (SurveyPrompt.razor
): Blazor anket bileşeni.
wwwroot
klasör: Yapılandırma ayarları için ve ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.json
uygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.html
sayfası, HTML sayfası olarak uygulanan uygulamanın kök sayfasıdır:- Uygulamanın herhangi bir sayfası istendiğinde, bu sayfa işlenir ve yanıtta döndürülür.
- Sayfa, kök
App
bileşenin nerede işlendiğini belirtir. Bileşen, DOM öğesininapp
(<app>Loading...</app>
) konumunda işlenir.
_Imports.razor
: Ad alanları için yönergeler gibi@using
uygulamanın bileşenlerine (.razor
) eklenecek ortak Razor yönergeleri içerir.App.razor
: Bileşeni kullanarak Router istemci tarafı yönlendirmeyi ayarlayan uygulamanın kök bileşeni. Bileşen, Router tarayıcı gezintisini durdurur ve istenen adresle eşleşen sayfayı işler.Program.cs
: Uygulamanın WebAssembly konağını ayarlayan giriş noktası:- Bileşen
App
, uygulamanın kök bileşenidir. BileşenApp
, kök bileşen koleksiyonunaapp
builder.RootComponents.Add<App>("app")
() DOM öğesi (<app>Loading...</app>
içindewwwroot/index.html
) olarak belirtilir. - Hizmetler eklenir ve yapılandırılır (örneğin,
builder.Services.AddSingleton<IMyDependency, MyDependency>()
).
- Bileşen
Ek seçenekler yapılandırıldığında proje şablonundan oluşturulan bir Blazor WebAssembly uygulamada ek dosya ve klasörler görüntülenebilir. Örneğin, ASP.NET Core Identity ile uygulama oluşturmak, kimlik doğrulaması ve yetkilendirme özellikleri için ek varlıklar içerir.
Barındırılan Blazor WebAssembly bir çözüm aşağıdaki ASP.NET Core projelerini içerir:
- "Client": Uygulama Blazor WebAssembly .
- "Server": Uygulama ve hava durumu verilerini istemcilere Blazor WebAssembly sunan bir uygulama.
- "Shared": Ortak sınıfları, yöntemleri ve kaynakları koruyan bir proje.
Çözüm, Visual Studio'daki proje şablonundanBlazor WebAssembly, ASP.NET Çekirdek Barındırılan onay kutusu seçili olarak veya .NET CLI dotnet new blazorwasm
komutu kullanılarak seçeneği kullanılarak -ho|--hosted
oluşturulur. Daha fazla bilgi için bkz . ASP.NET Core Blazoriçin Araçlar.
Barındırılan Blazor bir Webassembly çözümündeki istemci tarafı uygulamasının proje yapısı ("Client" proje), tek başına Blazor WebAssembly bir uygulamanın proje yapısıyla aynıdır. Barındırılan Blazor WebAssembly çözümdeki ek dosyalar:
- "Server" projesi, "" projesinin
FetchData
bileşenineClient hava durumu verilerini döndüren bir hava durumu tahmin denetleyicisiControllers/WeatherForecastController.cs
içerir. - "" projesinde "Shared" veServer "Client" projeleri için hava durumu verilerini temsil eden bir hava durumu tahmin sınıfı
WeatherForecast.cs
bulunur.
Betiğin Blazor konumu
Betik Blazor , ASP.NET Core paylaşılan çerçevesine eklenmiş bir kaynaktan sunulur.
içindeBlazor Web AppBlazor, betik dosyasında bulunurComponents/App.razor
:
<script src="_framework/blazor.web.js"></script>
Bir Blazor Server uygulamada betik Blazor dosyasında bulunur Pages/_Host.cshtml
:
<script src="_framework/blazor.server.js"></script>
Bir Blazor Server uygulamada betik Blazor dosyasında bulunur Pages/_Host.cshtml
:
<script src="_framework/blazor.server.js"></script>
Bir Blazor Server uygulamada betik Blazor dosyasında bulunur Pages/_Layout.cshtml
:
<script src="_framework/blazor.server.js"></script>
Bir Blazor Server uygulamada betik Blazor dosyasında bulunur Pages/_Host.cshtml
:
<script src="_framework/blazor.server.js"></script>
Bir Blazor WebAssembly uygulamada, Blazor betik içeriği dosyada wwwroot/index.html
bulunur:
<script src="_framework/blazor.webassembly.js"></script>
ve <body>
içeriğinin <head>
konumu
ve Blazor Web App<head>
<body>
içeriği dosyasında bulunur.Components/App.razor
Bir Blazor Server uygulamada ve <head>
<body>
içerik dosyada Pages/_Host.cshtml
bulunur.
Bir Blazor Server uygulamada ve <head>
<body>
içerik dosyada Pages/_Layout.cshtml
bulunur.
Bir Blazor Server uygulamada ve <head>
<body>
içerik dosyada Pages/_Host.cshtml
bulunur.
Bir Blazor WebAssembly uygulamada ve <head>
<body>
içerik dosyada wwwroot/index.html
bulunur.
İkili Blazor Server/Blazor WebAssembly uygulama
Uygulama veya uygulama olarak çalışabilen bir Blazor Server Blazor WebAssembly uygulama oluşturmak için bir yaklaşım, tüm uygulama mantığını ve bileşenlerini birRazor sınıf kitaplığına (RCL) yerleştirmek ve ayrı Blazor Server ve Blazor WebAssembly projelerden RCL'ye başvurmaktır. Uygulamaları barındırma modeline göre farklılık gösteren yaygın hizmetler için, RCL'de hizmet arabirimlerini tanımlayın ve ve Blazor WebAssembly projelerindeki Blazor Server hizmetleri uygulayın.
Ek kaynaklar
ASP.NET Core