C# Mapping list of custom objects to SQL Server database

Job ID: 31507221

Budget: $30 – $250 USD

To support my programming I need a sample in c# and MS SQL Server.

Conditions:
If possible use Dapper for mapping. Otherwise use Entity Framework or any other tool. Always use versions which are free of charge and free for commercial projects.
Provide full code within Visual Studio solution. Code should run on Microsoft Visual Studio community 2019 and MS SQL Server Management Studio Version 18.9.2.

Task:
Given are several classes (see attached files).
Provide a complete solution which shows the way to map a list of Paragraph objects with included lists of Statement, Keyword, ChildParagraph and WebPage objects to a Microsoft SQL Server database with stored procedures.
Provide all needed SQL Server scripts for generating tables etc. as textfiles (.txt).

Provide all needed SQL Server stored procedures for CRUD as textfiles (.txt):
- Provide stored procedures ReadAll, DeleteAll for all paragraphs.
- Provide stored procedures for Create, Read, Update and Delete for one paragraph and (if possible) for several/a list of paragraphs.
- Provide stored procedures ReadAll, DeleteAll for all statements.
- Provide stored procedures for Create, Read, Update and Delete for one statement and (if possible) for several/a list of statements related to a specified paragraph (specified by DbId).
- Provide stored procedures ReadAll, DeleteAll for all webpages.
- Provide stored procedures for Create, Read, Update and Delete for one webpage and (if possible) for several/a list of webpages related to a specified paragraph (specified by DbId).
- Provide stored procedures ReadAll, DeleteAll for all keywords.
- Provide stored procedures for Create, Read, Update and Delete for one keyword and (if possible) for several/a list of keywords related to a specified paragraph (specified by DbId).
- Provide stored procedures ReadAll, DeleteAll for all child paragraphs and their children.
- Provide stored procedures for Create, Read, Update and Delete for one child paragraph and (if possible) for several/a list of child paragraphs related to a specified paragraph (specified by DbId) and their children.

Return DbId for each newly created object from stored procedure to calling c# code.
Use DbId in each table as primary key and foreign key in related tables. ObjectName should never be a primary or foreign key.

Provide all necessary additional information concerning SQL Server database necessary to successfully compile and run the project.

Provide CRUD methods in c# code to call the stored procedures.

If helpful you may create additional constructors in each class.
If possible, existing constructors and methods should not be changed.

Feel free to ask questions if something is not clear.