61 lines
1.2 KiB
Batchfile
61 lines
1.2 KiB
Batchfile
@echo off
|
|
setlocal disableDelayedExpansion
|
|
|
|
:Variables
|
|
set InputFile=%2
|
|
set OutputFile=%InputFile%#
|
|
set entity=%1
|
|
set "_strFind=ConfigureRepositoryWrapper(this IServiceCollection services)"
|
|
set "_strInsert1= services.AddScoped(typeof(IBaseRepository<%entity%>), typeof(%entity%Repository));"
|
|
set doreplace=0
|
|
|
|
rem if already inserted, do nothing
|
|
:Check
|
|
for /F "delims=" %%L in ('findstr /n "^" "%InputFile%"') do (
|
|
set "line=%%L"
|
|
setlocal EnableDelayedExpansion
|
|
|
|
set "line=!line:*:=!"
|
|
if "!line!" neq "" (
|
|
set "_line=!line:%_strInsert1%=!"
|
|
) else (
|
|
set _line=!line!
|
|
)
|
|
if "!_line!" neq "!line!" goto finish
|
|
endlocal
|
|
)
|
|
|
|
:Replace
|
|
>"%OutputFile%" (
|
|
for /F "delims=" %%L in ('findstr /n "^" "%InputFile%"') do (
|
|
set "line=%%L"
|
|
setlocal EnableDelayedExpansion
|
|
|
|
set "line=!line:*:=!"
|
|
if "!line!" neq "" (
|
|
set "_line=!line:%_strFind%=!"
|
|
) else (
|
|
set _line=!line!
|
|
)
|
|
|
|
|
|
if "!_line!" neq "!line!" (
|
|
echo.!line!
|
|
endlocal
|
|
set doreplace=1
|
|
) else (
|
|
echo.!line!
|
|
if !doreplace!==1 (
|
|
echo !_strInsert1!
|
|
)
|
|
endlocal
|
|
set doreplace=0
|
|
)
|
|
)
|
|
)
|
|
|
|
del %InputFile%
|
|
copy %OutputFile% %InputFile%>nul
|
|
del %OutputFile%
|
|
|
|
:finish |