From ba4d2fc0c6b7ce67dd9a3bdaa2aa708e7d4d519b Mon Sep 17 00:00:00 2001 From: Apollo3zehn Date: Tue, 6 Aug 2024 13:48:20 +0200 Subject: [PATCH] Add first draft of README --- README.md | 22 ++++++++++++++++++++++ image.avif | Bin 0 -> 64174 bytes src/BlazorJsonFormTester.Core/Types.cs | 3 +-- 3 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 image.avif diff --git a/README.md b/README.md index 4913abc..2bdd03a 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,28 @@ Build Blazor forms from JSON Schema using MudBlazor. +The main use case for this library is a Single-Page Blazor application which needs to provide a proper UI for configuration data. The corresponding C# types may be defined in the backend (or in plugins loaded by the backend). With the help of the library `NJsonSchema` it is then easy to generate a JSON schema from these configuration types, send the resulting JSON to the frontend and then use this library to render a nice UI. The backing storage is a `JsonNode` and when the configuration made by the user should be saved, it can be transferred back to the backend as a JSON string. In the backend you can deserialize and validate the data as shown below. + +It is also possible to validate everything in the frontend and best practice would be to do both. You can do so by using `MudForm` (MudBlazor) or `EditContext` (Microsoft) which is shown below as well. + +[Here](https://apollo3zehn.github.io/BlazorJsonForm/) is a live example with a predefined configuration type. This type has many different property to test all different types of data. The button `Nullable` mode makes the live example to use the same configuration type but now with all types being nullable. The effect is that now all properties are allowed to be null and so the validation is expected to succeed. + +The button `Validate form` validates the current state of the form in the frontend. The button `Validate object` causes the JSON form data to be deseralized and validated using data annotations [validator](https://learn.microsoft.com/en-us/dotnet/api/system.componentmodel.dataannotations.validator) class. + +The following data annotation attributes are supported and tested: + +```cs +[Range(...)] +[StringLength(...)] +[RegularExpression(...)] +``` + +You should consider addings the `Required` attribute next to `RegularExpression` attribute because otherwise [empty strings are always valid](https://stackoverflow.com/a/32945086). + +![Example of BlazorJsonForm](image.avif) + +You can define custom attrbutes which will change the generated JSON schema. Here are two example about how to add a [helper text](https://mudblazor.com/components/textfield#form-props-helper-text) to the inputs and about how to specify custom enum member names to be displayed in the UI: + # How to: Helper text ```cs diff --git a/image.avif b/image.avif new file mode 100644 index 0000000000000000000000000000000000000000..f7ff3da3eef8fc05262cdcc49cd1d7426549154d GIT binary patch literal 64174 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
+sFN^f-X> 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