-
Notifications
You must be signed in to change notification settings - Fork 0
/
todo.txt
216 lines (120 loc) · 4.87 KB
/
todo.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
# todo
paging sqlite
https://www.sqlite.org/rowvalue.html
1. SqlServer code gen and data.
Fix System.Data.SqlClient and Microsoft.Data.SqlClient issue.
1. tek connection varsa. connection ismi istemeden çalış.
2. tablo ismi veya listesi ile çalışma
1. Sqlite datatypes hata veriyor onu düzelt.
2. Sqlite bool, date time handling için gerekli conversion kodlarını yaz ve ekle.
https://www.sqlite.org/datatype3.html
1. dotnet tool install
dotnet pack /property:Version=0.0.1
dotnet tool install --global --add-source ./Karkas.CodeGeneration/Karkas.CodeGeneration.ConsoleApp/nupkg/ Karkas.CodeGeneration.ConsoleApp
dotnet tool uninstall --global karkas.codegeneration.consoleapp
https://learn.microsoft.com/en-us/dotnet/core/tools/global-tools-how-to-create
3. sqlite error codes
https://www.sqlite.org/rescode.html
1. Code metrics
https://learn.microsoft.com/en-us/visualstudio/code-quality/how-to-generate-code-metrics-data?view=vs-2022
https://www.nuget.org/packages/Microsoft.CodeAnalysis.Metrics/
1. Use events for database logging.
or logging and if wanted they will use db or others.
https://elmah.github.io/
https://github.com/elmah/Elmah
2. docker commit???
## First to look
Validation code için yazdım.
Bunun için test yaz.
Kontrol et.
IsStringTypeWithoutLength kontrol et.
1. CLOB,BLOB does not work
1. For oracle, force decimal to int,long
oracle code generation number to long
10,0
38,0
2. dal.QueryUsingColumnName(Album.ColumnNames.AlbumId,)
Here, it should other where operators.
3.
4. to dict, from dict
- Nullable DONE
- Put to config? think about it
5. docker SQL error checking
ERROR at line 7:
6. Add ExceptionChanger tests for DB specific codes
3. Refactoring methods to English Only Names
2. add intellisense comments
docfx is decided and v0 is added.
- need to improve comments
- need to add github pages
- ???need to filter protected, abstract classes
3. Master Detail Queries
4. Read records for generating record struct?
6. validate method
7. pydantic methods look.
8. Entity Framework methods
## Tests
1. Create looping script which will check following configurations
- UseSchemaNameInNamespaces
- UseSchemaNameInSqlQueries
- UseSchemaNameInFolders
- UseQuotesInQueries
- UseGlobalUsings
- UseFileScopedNamespace
2. Paging tests
3. column --> expected .net type
Need to create my own example database for these examples.
4. create dotnet/nuget packages
https://learn.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli
github secrets and other should be looked.
PackageId and version how to automate??
<PropertyGroup>
<PackageId>Karkas.DataUtil.2024.09.22</PackageId>
<Version>2024.09.22</Version>
<Authors>Atilla Özgür</Authors>
<Company>Karkas</Company>
</PropertyGroup>
## Bugs
## Improvements and Nice to Have
1. add [JsonPropertyName("XXX")] to code generation
JsonNamingPolicy includes new naming policies for snake_case (with an underscore)
2. Add configuration method which initializes from configuration files (app.config ...)
3. Read logging and fix it
4. Later check multiple .net SDK versions
For now, we work with .net6
<TargetFrameworks>net6.0;net8.0</TargetFrameworks>
https://learn.microsoft.com/en-us/nuget/create-packages/multiple-target-frameworks-project-file
5. https://learn.microsoft.com/en-us/nuget/create-packages/multiple-target-frameworks-project-file
think about multiple version support
6. change logging
https://learn.microsoft.com/en-us/dotnet/core/extensions/logger-message-generator
https://learn.microsoft.com/en-us/aspnet/core/fundamentals/logging/?view=aspnetcore-7.0
## Documentation and Examples
1. give examples for dependency injection
2. use mermaid as markdown to create some diagrams
I have started doing it.
I need to improve documentation.
https://mermaid-js.github.io/mermaid/
## Code Review
1. Nullable compile warnings
<Nullable>enable</Nullable>
<Nullable>disable</Nullable>
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-messages/nullable-warnings
2. Karkas.Data vs Karkas.DataUtil ???
Should I fix the namespace?
4. CommandLineParser is good one.
https://github.com/commandlineparser/commandline
https://github.com/commandlineparser/commandline/wiki/Getting-Started
https://medium.com/@eduardosilva_94960/mastering-command-line-parsing-in-net-core-with-commandlineparser-c20721100359
## Later
Dockerfile enhancements
fork and give a pull request, need to sign my commits. Do it later
https://github.com/gvenzl/oci-oracle-xe/blob/main/examples/dkr-create-oracle-xe-server
## Decisions
1. Due to Oracle, I updated QueryHelper
It generates quoted string now.
Should I make this one customizable so that it could be turned off and on.
## sample databases
- https://github.com/lerocha/chinook-database
- https://github.com/jpwhite3/northwind-SQLite3/
- https://github.com/bradleygrant/sakila-sqlite3