초기 커밋: SheetMe 서식생성기 (P0~P5 완료 상태)

레거시 서식생성기(VB.NET WinForms) 대체용 C#/.NET 10 WPF 디자이너.
기준선: 실DB 활성 디자인 1,271건 왕복 의미론 diff 0 / 예외 0, 단위 테스트 49/49.

이 커밋에 함께 포함된 자격증명 분리:
- appsettings.json 을 __HOST__/__PASSWORD__ 플레이스홀더로 전환
- 실접속 정보는 appsettings.Development.json 으로 분리(.gitignore 제외,
  csproj Debug 조건부 복사라 Release 산출물에 실리지 않음)
- ConfigLoader 를 환경변수 > Development > appsettings 순 레이어링으로 변경,
  미치환 플레이스홀더는 '미설정'으로 간주

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Msystech
2026-08-11 17:20:22 +09:00
co-authored by Claude Fable 5
commit 16c07f48dc
102 changed files with 14210 additions and 0 deletions
+28
View File
@@ -0,0 +1,28 @@
namespace SheetMe.Data.Config;
/// <summary>
/// 데이터 계층 설정 — appsettings.json 바인딩 모델.
/// SaveMode 기본값은 File — 운영 레거시 테이블(E_SdgMst/E_SctMst) 쓰기는 명시적 설정 후에만 활성화된다.
/// </summary>
public sealed class DataConfig
{
#region Properties
/// <summary>Oracle 접속 문자열 (ConnectionStrings:His)</summary>
public string ConnectionString { get; set; } = string.Empty;
/// <summary>DB 프로바이더 — 기본 Oracle</summary>
public string Provider { get; set; } = "Oracle";
/// <summary>저장 모드 — File(기본, .xml 파일) | Db(E_SdgMst/E_SctMst 저장)</summary>
public string SaveMode { get; set; } = "File";
/// <summary>파일 모드 서식 폴더</summary>
public string XmlFolder { get; set; } = "forms";
#endregion
#region Methods
/// <summary>DB 저장 모드 여부</summary>
public bool IsDbSaveMode()
=> string.Equals(SaveMode, "Db", StringComparison.OrdinalIgnoreCase);
#endregion
}