Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Not
Bu, bu makalenin en son sürümü değildir. Geçerli sürüm için bu makalenin .NET 10 sürümüne bakın.
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 10 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. ve'nin Blazor ServerBlazor WebAssembly güçlü yönlerini sunucu tarafı ve istemci tarafı işleme, akış işleme, gelişmiş gezinti ve form işleme ile bileşen başına veya Blazor Server kullanarak Blazor WebAssembly etkileşim ekleme özelliğini 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şenleribulunur.
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üzeni için bileşenle bitişik olan stil sayfasıdır. -
NavMenuBileş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 ()NavLinkiç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üne atanmış stil sayfasıdır. - Bileşen,
ReconnectModalkullanıcı arabirimindeki sunucu tarafı bağlantı durumunu yansıtır ve uygulamanın etkileşimli işleme modu Etkileşimli Sunucu veya Etkileşimli Otomatik olduğunda eklenir. Daha fazla bilgi için bkz. ASP.NET Core BlazorSignalR kılavuzu. -
ReconnectModal.razor.css, bileşenin birlikte bulunan stil sayfasıdırReconnectModal. -
ReconnectModal.razor.jsbileşeni içinReconnectModalbirlikte bulunan JavaScript dosyasıdır.
- Bileşen
MainLayout(MainLayout.razor), uygulamanın düzen bileşenidir. -
MainLayout.razor.css, uygulamanın ana düzeni için bileşenle bitişik olan stil sayfasıdır. -
NavMenuBileş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 ()NavLinkiç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üne atanmış 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.
moniker range=">= aspnetcore-10.0"
Bileşen NotFound (NotFound.razor) bir istek yolu için içerik bulunamadığında görüntülenecek bir Bulunamadı sayfası uygular. Daha fazla bilgi için bkz. ASP.NET Çekirdek Blazor gezintisi.
moniker-end
Bileşen (), HTML App işaretlemesi, App.razor bileşeni ve etiketiyle uygulamanın kök bileşenidir<head>Routes.Blazor<script> 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 Razor her iki projenin bileşenleri için ortak @using yönergeler içerir.
Properties Sunucu projesinin klasörü, dosyada geliştirme ortamı yapılandırmasını.
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 httpiç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 -lp https) komutuna geçirmek --launch-profile httpsdotnet watch zorunda kalmadan uygulamayı .NET CLI ile başlatmayı dotnet run tercih ediyorsanız, profili dosyadaki profilin httpshttp ü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:
- Razor bileşenlerine yönelik hizmetler, AddRazorComponents çağrılarak eklenir. 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
Appbileş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ı.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
Pagesyönlendirilebilir istemci tarafı Razor bileşenleri içerir. Her sayfanın yolu yönergesi@pagekullanı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 (
FetchData) veri yükleyen birWeatherForecastServicebileşenin tanıtım kodu ve birCounterbileş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ı:
Dataklasör: UygulamanınWeatherForecastbileşenineWeatherForecastServiceörnek hava durumu verileri sağlayan sınıfını ve uygulamasınıFetchDataiçerir.Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) ve bir.razoruygulamanın kök Razor sayfasını içerirBlazor Server. Her sayfanın yolu yönergesi@pagekullanı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
Appbileşenin (App.razor) nerede işlendiğini belirtir.
-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
Errorbileşen (Error.razor): Uygulamada işlenmeyen bir özel durum oluştuğunda işlenir. -
FetchDatabileşen (FetchData.razor): Veri getirme sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular.
-
Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Sharedklasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
MainLayout.razor.css: Uygulamanın ana düzeni için stil sayfası. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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ı. -
SurveyPromptbileşen (SurveyPrompt.razor): Blazor anket bileşeni.
-
wwwrootklasö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 Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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.jsonve 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örnekFetchDatabileş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 FetchDataveri yükleyen bir WeatherForecastService bileşenin tanıtım koduyla ve bir bileşenle kullanıcı etkileşimiyle Counter doldurulur.
Dataklasör: UygulamanınWeatherForecastbileşenineWeatherForecastServiceörnek hava durumu verileri sağlayan sınıfını ve uygulamasınıFetchDataiçerir.Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) ve bir.razoruygulamanın kök Razor sayfasını içerirBlazor Server. Her sayfanın yolu yönergesi@pagekullanı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
Appbileşenin (App.razor) nerede işlendiğini belirtir.
-
_Layout.cshtml: Uygulamanın kök sayfasının_Host.cshtmldüzen sayfası. -
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
Errorbileşen (Error.razor): Uygulamada işlenmeyen bir özel durum oluştuğunda işlenir. -
FetchDatabileşen (FetchData.razor): Veri getirme sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular.
-
Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Sharedklasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
MainLayout.razor.css: Uygulamanın ana düzeni için stil sayfası. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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ı. -
SurveyPromptbileşen (SurveyPrompt.razor): Blazor anket bileşeni.
-
wwwrootklasö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 Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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.jsonve 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örnekFetchDatabileş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 FetchDataveri yükleyen bir WeatherForecastService bileşenin tanıtım koduyla ve bir bileşenle kullanıcı etkileşimiyle Counter doldurulur.
Dataklasör: UygulamanınWeatherForecastbileşenineWeatherForecastServiceörnek hava durumu verileri sağlayan sınıfını ve uygulamasınıFetchDataiçerir.Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) ve bir.razoruygulamanın kök Razor sayfasını içerirBlazor Server. Her sayfanın yolu yönergesi@pagekullanı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
Appbileşenin (App.razor) nerede işlendiğini belirtir.
-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
Errorbileşen (Error.razor): Uygulamada işlenmeyen bir özel durum oluştuğunda işlenir. -
FetchDatabileşen (FetchData.razor): Veri getirme sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular.
-
Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Sharedklasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
MainLayout.razor.css: Uygulamanın ana düzeni için stil sayfası. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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ı. -
SurveyPromptbileşen (SurveyPrompt.razor): Blazor anket bileşeni.
-
wwwrootklasö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 Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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.jsonve 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.Startupsı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örnekFetchDatabileş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 FetchDataveri yükleyen bir WeatherForecastService bileşenin tanıtım koduyla ve bir bileşenle kullanıcı etkileşimiyle Counter doldurulur.
Dataklasör: UygulamanınWeatherForecastbileşenineWeatherForecastServiceörnek hava durumu verileri sağlayan sınıfını ve uygulamasınıFetchDataiçerir.Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) ve bir.razoruygulamanın kök Razor sayfasını içerirBlazor Server. Her sayfanın yolu yönergesi@pagekullanı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
Appbileşenin (App.razor) nerede işlendiğini belirtir.
-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
Errorbileşen (Error.razor): Uygulamada işlenmeyen bir özel durum oluştuğunda işlenir. -
FetchDatabileşen (FetchData.razor): Veri getirme sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular.
-
Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Sharedklasör: Aşağıdaki paylaşılan bileşenleri içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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. -
SurveyPromptbileşen (SurveyPrompt.razor): Blazor anket bileşeni.
-
wwwrootklasö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 Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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.jsonve 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.Startupsı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örnekFetchDatabileş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) veri yükleyen birweather.jsonbileşenin tanıtım kodu ve birCounterbileş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ı:
-
Layoutklasör: Aşağıdaki düzen bileşenlerini ve stil sayfalarını içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
MainLayout.razor.css: Uygulamanın ana düzeni için stil sayfası. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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ı.
-
etiket-sonu
moniker range=">= aspnetcore-10.0"
-
Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) içerir.razor. Her sayfanın yolu yönergesi@pagekullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular. -
Weatherbileşen (Weather.razor): Hava Durumu sayfasını uygular. -
NotFoundbileşen (NotFound.razor): İstek yolu için içerik bulunamadığında görüntülenecek bir Bulunamadı sayfası uygular. Daha fazla bilgi için bkz. ASP.NET Çekirdek Blazor gezintisi.
-
moniker-sonu
moniker range=">= aspnetcore-8.0 < aspnetcore-10.0"
-
Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) içerir.razor. Her sayfanın yolu yönergesi@pagekullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular. -
Weatherbileşen (Weather.razor): Hava Durumu sayfasını uygular.
-
moniker-bitişi
moniker range=">= aspnetcore-8.0"
_Imports.razor: Ad alanları için yönergeler gibi Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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.Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Not
Profil,
httpdosyadaki profilinhttpsönüne yer alırlaunchSettings.json. Bir uygulama .NET CLI ile çalıştırıldığında, bulunan ilk profil olduğuhttpiç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-lp https) komutuna geçirmek--launch-profile httpsdotnet watchzorunda kalmadan uygulamayı .NET CLI ile başlatmayıdotnet runtercih ediyorsanız, profili dosyadaki profilinhttpshttpüzerine yerleştirmeniz yeterlidir.wwwrootklasör: Yapılandırma klasörü. Webindex.htmlsayfası, 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
Appbileşenin nerede işlendiğini belirtir. Bileşen, dom öğesinindivkonumunda (idapp<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 koleksiyonunadivid(app<div id="app">Loading...</div>içinde) sahipwwwroot/index.htmlbuilder.RootComponents.Add<App>("#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 (
FetchData) veri yükleyen birweather.jsonbileşenin tanıtım kodu ve birCounterbileş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ı:
Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) içerir.razor. Her sayfanın yolu yönergesi@pagekullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
FetchDatabileşen (FetchData.razor): Veri getirme sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular.
-
Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Sharedklasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
MainLayout.razor.css: Uygulamanın ana düzeni için stil sayfası. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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ı. -
SurveyPromptcomponent () (SurveyPrompt.razor.NET 7 veya önceki sürümlerinde ASP.NET Core): Blazor anket bileşeni.
-
wwwrootklasör: Yapılandırma ayarları için ve ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.jsonuygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.htmlsayfası, 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
Appbileşenin nerede işlendiğini belirtir. Bileşen, dom öğesinindivkonumunda (idapp<div id="app">Loading...</div>ile işlenir.
_Imports.razor: Ad alanları için yönergeler gibi Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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 koleksiyonunadivid(app<div id="app">Loading...</div>içinde) sahipwwwroot/index.htmlbuilder.RootComponents.Add<App>("#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ılanonay kutusu seçili olarak veya .NET CLI -ho|--hosted komutu kullanılarak seçeneği kullanılarak dotnet new blazorwasm 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
Controllers/WeatherForecastController.csbileşenineClient hava durumu verilerini döndüren bir hava durumu tahmin denetleyicisiFetchDataiçerir. - "" projesinde "Shared" ve
WeatherForecast.cs"Client" projeleri için hava durumu verilerini temsil eden bir hava durumu tahmin sınıfı Server 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 FetchDataveri yükleyen bir weather.json bileşenin tanıtım kodu ve bir bileşenle kullanıcı etkileşimi ile Counter doldurulur.
Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) içerir.razor. Her sayfanın yolu yönergesi@pagekullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
FetchDatabileşen (FetchData.razor): Veri getirme sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular.
-
Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Sharedklasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
MainLayout.razor.css: Uygulamanın ana düzeni için stil sayfası. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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ı. -
SurveyPromptbileşen (SurveyPrompt.razor): Blazor anket bileşeni.
-
wwwrootklasör: Yapılandırma ayarları için ve ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.jsonuygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.htmlsayfası, 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
Appbileşenin nerede işlendiğini belirtir. Bileşen, dom öğesinindivkonumunda (idapp<div id="app">Loading...</div>ile işlenir.
_Imports.razor: Ad alanları için yönergeler gibi Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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 koleksiyonunadivid(app<div id="app">Loading...</div>içinde) sahipwwwroot/index.htmlbuilder.RootComponents.Add<App>("#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ılanonay kutusu seçili olarak veya .NET CLI -ho|--hosted komutu kullanılarak seçeneği kullanılarak dotnet new blazorwasm 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
Controllers/WeatherForecastController.csbileşenineClient hava durumu verilerini döndüren bir hava durumu tahmin denetleyicisiFetchDataiçerir. - "" projesinde "Shared" ve
WeatherForecast.cs"Client" projeleri için hava durumu verilerini temsil eden bir hava durumu tahmin sınıfı Server 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 FetchDataveri yükleyen bir weather.json bileşenin tanıtım kodu ve bir bileşenle kullanıcı etkileşimi ile Counter doldurulur.
Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) içerir.razor. Her sayfanın yolu yönergesi@pagekullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
FetchDatabileşen (FetchData.razor): Veri getirme sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular.
-
Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Sharedklasör: Aşağıdaki paylaşılan bileşenleri ve stil sayfalarını içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
MainLayout.razor.css: Uygulamanın ana düzeni için stil sayfası. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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ı. -
SurveyPromptbileşen (SurveyPrompt.razor): Blazor anket bileşeni.
-
wwwrootklasör: Yapılandırma ayarları için ve ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.jsonuygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.htmlsayfası, 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
Appbileşenin nerede işlendiğini belirtir. Bileşen, dom öğesinindivkonumunda (idapp<div id="app">Loading...</div>ile işlenir.
_Imports.razor: Ad alanları için yönergeler gibi Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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 koleksiyonunadivid(app<div id="app">Loading...</div>içinde) sahipwwwroot/index.htmlbuilder.RootComponents.Add<App>("#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ılanonay kutusu seçili olarak veya .NET CLI -ho|--hosted komutu kullanılarak seçeneği kullanılarak dotnet new blazorwasm 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
Controllers/WeatherForecastController.csbileşenineClient hava durumu verilerini döndüren bir hava durumu tahmin denetleyicisiFetchDataiçerir. - "" projesinde "Shared" ve
WeatherForecast.cs"Client" projeleri için hava durumu verilerini temsil eden bir hava durumu tahmin sınıfı Server 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 FetchDataveri yükleyen bir weather.json bileşenin tanıtım kodu ve bir bileşenle kullanıcı etkileşimi ile Counter doldurulur.
Pagesklasör: Uygulamanın yönlendirilebilir Blazor bileşenlerini (Razor) içerir.razor. Her sayfanın yolu yönergesi@pagekullanılarak belirtilir. Şablon aşağıdaki bileşenleri içerir:-
Counterbileşen (Counter.razor): Sayaç sayfasını uygular. -
FetchDatabileşen (FetchData.razor): Veri getirme sayfasını uygular. -
Indexcomponent (Index.razor): Sayfayı Home uygular.
-
Propertiesklasör: Dosyada geliştirme ortamı yapılandırmasınılaunchSettings.json.Sharedklasör: Aşağıdaki paylaşılan bileşenleri içerir:-
MainLayoutbileşen (MainLayout.razor): Uygulamanın düzen bileşeni. -
NavMenubileşen (NavMenu.razor): Kenar çubuğu gezintisi uygular. DiğerNavLinkbileşenlere ()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. -
SurveyPromptbileşen (SurveyPrompt.razor): Blazor anket bileşeni.
-
wwwrootklasör: Yapılandırma ayarları için ve ortam uygulaması ayarları dosyaları dahil olmak üzereappsettings.jsonuygulamanın genel statik varlıklarını içeren uygulamanın Web Kök klasörü. Webindex.htmlsayfası, 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
Appbileş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 Razor uygulamanın bileşenlerine (.razor) eklenecek ortak@usingyö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<app>Loading...</app>() DOM öğesi (wwwroot/index.htmliçindebuilder.RootComponents.Add<App>("app")) 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ılanonay kutusu seçili olarak veya .NET CLI -ho|--hosted komutu kullanılarak seçeneği kullanılarak dotnet new blazorwasm 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
Controllers/WeatherForecastController.csbileşenineClient hava durumu verilerini döndüren bir hava durumu tahmin denetleyicisiFetchDataiçerir. - "" projesinde "Shared" ve
WeatherForecast.cs"Client" projeleri için hava durumu verilerini temsil eden bir hava durumu tahmin sınıfı Server bulunur.
Betiğin Blazor konumu
Blazor betiği, otomatik sıkıştırma ve iz bırakma ile statik bir web varlığı olarak sunulur. Daha fazla bilgi için bkz. ASP.NET Core Blazor statik dosyaları.
içindeBlazor Web AppBlazor, betik dosyasında bulunurComponents/App.razor:
<script src="@Assets["_framework/blazor.web.js"]"></script>
Bir Blazor Server uygulamada betik Blazor dosyasında bulunur Pages/_Host.cshtml :
<script src="_framework/blazor.server.js"></script>
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>
Betik Blazor , ASP.NET Core paylaşılan çerçevesine eklenmiş bir kaynaktan sunulur.
Bir Blazor Server uygulamada betik Blazor dosyasında bulunur Pages/_Host.cshtml :
<script src="_framework/blazor.server.js"></script>
Betik Blazor , ASP.NET Core paylaşılan çerçevesine eklenmiş bir kaynaktan sunulur.
Bir Blazor Server uygulamada betik Blazor dosyasında bulunur Pages/_Layout.cshtml :
<script src="_framework/blazor.server.js"></script>
Betik Blazor , ASP.NET Core paylaşılan çerçevesine eklenmiş bir kaynaktan sunulur.
Bir Blazor Server uygulamada betik Blazor dosyasında bulunur Pages/_Host.cshtml :
<script src="_framework/blazor.server.js"></script>
Bir Blazor Web App veya Blazor Server uygulama için, uygulama yayımlandığında betiği otomatik olarak eklemek Razor için projenin en az bir .razor bileşen dosyası (Blazor) içermesi gerekir. Proje en az bir Razor bileşen içermiyorsa, uygulamanın proje dosyasındaki MSBuild özelliğini RequiresAspNetWebAssets öğesini true olacak şekilde ayarlayın ki Blazor betiği dahil edilsin.
<RequiresAspNetWebAssets>true</RequiresAspNetWebAssets>
Bir Blazor WebAssembly uygulamada, Blazor betik içeriği dosyada wwwroot/index.html bulunur:
<script src="_framework/blazor.webassembly#[.{fingerprint}].js"></script>
Uygulama yayımlandığında {fingerprint} yer tutucu, önbellek temizleme için otomatik olarak benzersiz bir karma ile değiştirilir.
<script src="_framework/blazor.webassembly.js"></script>
ve <head> içeriğinin <body> 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 ServerBlazor WebAssembly uygulama oluşturmak için bir yaklaşım, tüm uygulama mantığını ve bileşenlerini birRazorsı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 Server projelerindeki Blazor WebAssembly hizmetleri uygulayın.
Ek kaynaklar
ASP.NET Core