From cfaabd2d91fe1537a4c84370b0ea8a19517b35e8 Mon Sep 17 00:00:00 2001 From: Chandrakanth Date: Tue, 11 Jun 2024 23:18:09 +0530 Subject: [PATCH 1/3] dotnet7 --- documentation/dotnet7.md | 72 ++++++++++++++++++++++++++++++++++++++++ scripts/getfiles.ps1 | 48 +++++++++++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 documentation/dotnet7.md create mode 100644 scripts/getfiles.ps1 diff --git a/documentation/dotnet7.md b/documentation/dotnet7.md new file mode 100644 index 0000000..e0dbf9c --- /dev/null +++ b/documentation/dotnet7.md @@ -0,0 +1,72 @@ +# dotnet 7 version + +[ ] CascadingValues + [ ] CascadingValuesByName + [ ] CascadingValuesByType + [ ] ManualParameterPassing + [ ] OverridingCascadedValues +[ ] Components + [ ] BindingDirectives + [ ] CapturingUnexpectedParameters + [ ] CodeGeneratedHtmlAttributes + [ ] ComponentLifecycles + [ ] CreatingAComponent + [ ] DirectiveAttributes + [ ] EventCallbacks + [ ] LiteralsExpressionsAndDirectives + [ ] MultithreadedRendering + [ ] OneWayBinding + [ ] ReplacingChildAttributes + [ ] TwoWayBinding + [ ] UsingInvokeAsync +[ ] DependencyInjection + [ ] BasicDependencyInjection + [ ] OwningComponentScopes + [ ] OwningMultipleDependenciesTheRightWay + [ ] OwningMultipleDependenciesTheWrongWay + [ ] ServerDependencyScopes + [ ] TransientLifetimes + [ ] UsingGenericOwningComponentBase + [ ] WebAssemblyDependencyScopes + [ ] WebChat +[ ] Forms + [ ] AccessingFormState + [ ] BasicForm + [ ] CustomValidation + [ ] FormInputs + [ ] HandlingFormSubmission + [ ] InheritingFromInputBase + [ ] ValidatingUserInput +[ ] JavaScriptInterop + [ ] AccessingJavaScriptReturnValues + [ ] CallingDotNetFromJavaScript + [ ] CallingDotNetFromJavaScriptBasic + [ ] CallingDotNetFromJavaScriptLifetimes + [ ] CallingJavaScriptFromDotNet + [ ] CallingStaticDotNetMethods + [ ] HtmlElementReferences + [ ] JavaScriptBootProcess + [ ] PassingComplexObjectsToJavaScript + [ ] UpdatingDocumentTitle +[ ] Layouts + [ ] CreatingALayout + [ ] NestedLayouts + [ ] SpecifyingALayoutExplicitly + [ ] UsingALayout +[ ] RenderTrees + [ ] IncrementalRenderTreeProof + [ ] OptimisingUsingKeys +[ ] Routing + [ ] CapturingAParameterValue + [ ] ConstrainingRouteParameters + [ ] NavigatingViaCode + [ ] NavigatingViaHtml + [ ] OptionalRouteParameters + [ ] OptionalRouteParametersWithDefaultValues + [ ] PageNotFound +[ ] TemplatedComponents + [ ] CreatingATabControl + [ ] PassingDataToARenderFragment + [ ] PassingPlaceholdersToRenderFragments + [ ] TemplatedComponents + [ ] UsingTypeParamToCreateGenericComponents diff --git a/scripts/getfiles.ps1 b/scripts/getfiles.ps1 new file mode 100644 index 0000000..681428b --- /dev/null +++ b/scripts/getfiles.ps1 @@ -0,0 +1,48 @@ +# Define the function +function Generate-FolderChecklist { + param ( + [string]$RootDirectory = "../src", + [string]$OutputFileName = "./documentation/FolderChecklist.md" + ) + + # Check if the specified root directory exists + if (-Not (Test-Path -Path $RootDirectory)) { + Write-Error "Directory $RootDirectory does not exist." + return + } + + # Initialize an empty array to hold the output lines + $outputLines = @() + + # Add a header to the output + $outputLines += "# Folder Checklist" + $outputLines += "" + + # Recursively fetch folder structure + $concepts = Get-ChildItem -Path $RootDirectory -Directory + + foreach ($concept in $concepts) { + # Add the concept folder as an unchecked item + $outputLines += "[ ] $($concept.Name)" + + # Fetch sub-concepts + $subConcepts = Get-ChildItem -Path $concept.FullName -Directory + + foreach ($subConcept in $subConcepts) { + # Add the sub-concept folder as an indented unchecked item + $outputLines += " [ ] $($subConcept.Name)" + } + } + + # Define the output file path + $outputFilePath = Join-Path -Path (Get-Location) -ChildPath $OutputFileName + + # Write the output to the new Markdown file + $outputLines | Out-File -FilePath $outputFilePath -Encoding utf8 + + # Inform the user + Write-Output "Markdown file with folder checklist created at: $outputFilePath" +} + +# Call the function +Generate-FolderChecklist -RootDirectory "src" -OutputFileName "FolderChecklist.md" From 4cb312f109e27a1ac6be9aafc160c57b26a0dd18 Mon Sep 17 00:00:00 2001 From: Chandrakanth Date: Fri, 14 Jun 2024 22:51:43 +0530 Subject: [PATCH 2/3] init draft --- documentation/draft.md | 79 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 documentation/draft.md diff --git a/documentation/draft.md b/documentation/draft.md new file mode 100644 index 0000000..88782d9 --- /dev/null +++ b/documentation/draft.md @@ -0,0 +1,79 @@ +### To Do: +- Understand hosting models +- Blazor WebAssembly +- Blazor client-side +- Blazor server +- SignalR +- Blazor hybrid +- Diagrams? + +-------------------- + +### What is Blazor? + +Blazor is a framework for building interactive web user interfaces (UIs) using C# and HTML. It allows you to: +- Create web apps that run in the browser using WebAssembly (WASM) or on the server. +- Integrate seamlessly with JavaScript. +- Enjoy the performance benefits of .NET. + +### ASP.NET Core Blazor + +Blazor is part of the ASP.NET Core suite, which includes: +- **ASP.NET Core MVC**: For building web apps using the Model-View-Controller pattern. +- **ASP.NET Core Razor Pages**: For building dynamic web pages. +- **ASP.NET Core Blazor**: For building interactive web UIs. + +### ASP.NET Core Platform + +The ASP.NET Core platform provides several key components: +- **Kestrel**: A web server for ASP.NET Core. +- **Middleware**: Components for handling HTTP requests. +- **Razor**: A syntax for combining HTML and C#. +- **Model Binding**: For mapping data from HTTP requests to action method parameters. +- **Dependency Injection**: For managing object dependencies. +- **Logging**: For tracking application activity. + +### Understanding Hosting Models + +Blazor supports different hosting models: +- **WebAssembly**: Runs .NET code in the browser using WebAssembly. +- **Server**: Runs on the server and interacts with the client via SignalR. +- **Hybrid**: Combines server-side and client-side processing. + + +IL interpreter +deployed as static files +.net runtime runs inside the browser. + +Blazor server +* ASP on server in ASP.NET core app +* backend by SignalR connection +* application instance is created per "circuit" + +blazor is .net frontend web framework that supports server side rendering and client interactivity +in a single programming model + +* rich interactive UIs using C# +* share server side and client side app logic written in .NET +* render the UI as HTML and CSS for wide browser support, including mobile browser. +* build hybrid desktop and mobile apps with .NET and blazor. + +### Components in Blazor + +Components are the building blocks of Blazor applications. They are: +- .NET C# classes compiled into .NET assemblies. +- Designed to handle flexible UI rendering and user events. +- Nestable and reusable. +- Shareable and distributable as Razor class libraries or NuGet packages. + +### Full Stack Web Development with Blazor + +Blazor supports comprehensive web development features: +- **Dependency Injection**: For managing dependencies. +- **Layouts**: For consistent look and feel across pages. +- **JavaScript Interoperability**: For integrating with JavaScript code. +- **Client-Side Routing**: For navigating between pages. +- **Forms**: For handling user input. + + + From d106f6b5f0f5c84d82f53774e047d5a76a1af05f Mon Sep 17 00:00:00 2001 From: Chandrakanth Date: Fri, 14 Jun 2024 22:51:43 +0530 Subject: [PATCH 3/3] init draft --- documentation/draft.md | 79 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 documentation/draft.md diff --git a/documentation/draft.md b/documentation/draft.md new file mode 100644 index 0000000..88782d9 --- /dev/null +++ b/documentation/draft.md @@ -0,0 +1,79 @@ +### To Do: +- Understand hosting models +- Blazor WebAssembly +- Blazor client-side +- Blazor server +- SignalR +- Blazor hybrid +- Diagrams? + +-------------------- + +### What is Blazor? + +Blazor is a framework for building interactive web user interfaces (UIs) using C# and HTML. It allows you to: +- Create web apps that run in the browser using WebAssembly (WASM) or on the server. +- Integrate seamlessly with JavaScript. +- Enjoy the performance benefits of .NET. + +### ASP.NET Core Blazor + +Blazor is part of the ASP.NET Core suite, which includes: +- **ASP.NET Core MVC**: For building web apps using the Model-View-Controller pattern. +- **ASP.NET Core Razor Pages**: For building dynamic web pages. +- **ASP.NET Core Blazor**: For building interactive web UIs. + +### ASP.NET Core Platform + +The ASP.NET Core platform provides several key components: +- **Kestrel**: A web server for ASP.NET Core. +- **Middleware**: Components for handling HTTP requests. +- **Razor**: A syntax for combining HTML and C#. +- **Model Binding**: For mapping data from HTTP requests to action method parameters. +- **Dependency Injection**: For managing object dependencies. +- **Logging**: For tracking application activity. + +### Understanding Hosting Models + +Blazor supports different hosting models: +- **WebAssembly**: Runs .NET code in the browser using WebAssembly. +- **Server**: Runs on the server and interacts with the client via SignalR. +- **Hybrid**: Combines server-side and client-side processing. + + +IL interpreter +deployed as static files +.net runtime runs inside the browser. + +Blazor server +* ASP on server in ASP.NET core app +* backend by SignalR connection +* application instance is created per "circuit" + +blazor is .net frontend web framework that supports server side rendering and client interactivity +in a single programming model + +* rich interactive UIs using C# +* share server side and client side app logic written in .NET +* render the UI as HTML and CSS for wide browser support, including mobile browser. +* build hybrid desktop and mobile apps with .NET and blazor. + +### Components in Blazor + +Components are the building blocks of Blazor applications. They are: +- .NET C# classes compiled into .NET assemblies. +- Designed to handle flexible UI rendering and user events. +- Nestable and reusable. +- Shareable and distributable as Razor class libraries or NuGet packages. + +### Full Stack Web Development with Blazor + +Blazor supports comprehensive web development features: +- **Dependency Injection**: For managing dependencies. +- **Layouts**: For consistent look and feel across pages. +- **JavaScript Interoperability**: For integrating with JavaScript code. +- **Client-Side Routing**: For navigating between pages. +- **Forms**: For handling user input. + + +