MBN Stock WebView

기존 MBN_STOCK_N WinForms 애플리케이션을 단계적으로 대체하기 위한 Windows 데스크톱 프로젝트입니다.

현재 기준 기술 스택은 다음과 같습니다.

  • .NET 8 / C#
  • WinUI 3 (XAML)
  • Windows App SDK 1.8.6 (1.8.260317003)
  • WebView2 기반 운영 UI
  • Windows x64 전용
  • 단일 프로젝트 MSIX

현재 구현 범위

  • WinUI 3 네이티브 창과 WebView2 간 JSON 메시지 브리지
  • FarPoint 플레이리스트를 대체하는 Web UI
    • 항목 선택
    • 드래그 정렬 및 위/아래 이동
    • 선택 삭제
    • 로컬 저장/불러오기
  • 기존 운영 흐름을 반영한 PREPARE / TAKE IN / NEXT / TAKE OUT UI
  • F2, F8, Esc 단축키
  • 원본의 공급자 비의존 SQL/데이터 요청 71개를 .NET 8 Core 프로젝트로 이관
  • DB 구현을 UI 및 Core에서 분리하기 위한 IDataQueryExecutor 경계
  • MSIX 패키지 매니페스트와 x64 게시 프로필

실제 Oracle/MariaDB 연결과 Tornado/K3D 송출은 아직 어댑터를 연결하지 않았습니다. 화면의 송출 버튼은 현재 운영 흐름 검증용이며 실제 방송 신호를 보내지 않습니다. 상세 현황은 마이그레이션 문서를 참고하세요.

Visual Studio 2026에서 실행

  1. MBN_STOCK_WEBVIEW.sln을 엽니다.
  2. 솔루션 구성을 Debug, 플랫폼을 x64로 선택합니다.
  3. MBN_STOCK_WEBVIEW를 시작 프로젝트로 설정합니다.
  4. 실행 프로필이 MBN_STOCK_WEBVIEW (Package)인지 확인합니다.
  5. F5로 빌드·배포·실행합니다.

이 프로젝트는 MSIX 패키지 ID가 필요한 앱입니다. bin 아래의 EXE를 직접 실행하지 말고 반드시 Package 프로필이나 설치된 MSIX로 실행하세요.

기존 중복 형식 오류(CS0121, CS0436)는 루트 앱 프로젝트가 하위 Core 소스까지 다시 컴파일하던 문제였으며, 현재 src\**\*.cs를 앱 컴파일 대상에서 제외해 해결했습니다. Visual Studio가 이전 진단을 계속 표시하면 빌드 > 솔루션 정리 후 다시 빌드하세요.

명령줄 빌드

dotnet restore MBN_STOCK_WEBVIEW.sln -p:Platform=x64
dotnet build MBN_STOCK_WEBVIEW.sln -c Debug -p:Platform=x64

MSIX 생성:

dotnet build MBN_STOCK_WEBVIEW.csproj `
  -c Release `
  -p:Platform=x64 `
  -p:GenerateAppxPackageOnBuild=true `
  -p:AppxPackageSigningEnabled=false

위 명령은 서명되지 않은 개발 패키지를 AppPackages에 만듭니다. 배포용 MSIX는 Package.appxmanifestCN=Wickedness와 정확히 일치하는 인증서로 서명해야 합니다. 인증서와 개인 키는 저장소에 커밋하지 않습니다.

구성과 보안

원본 RES/MmoneyCoder.ini에는 실제로 보이는 DB 접속 정보가 있어 복사하지 않았습니다. 예제 설정에는 비밀값이 없으며, 실제 로컬 설정은 Git에서 제외되는 Config/appsettings.local.json을 사용하도록 예정되어 있습니다.

MSIX 설치 폴더는 읽기 전용입니다. 로그, 플레이리스트, 운영자 설정과 미리보기 파일은 이후 ApplicationData.Current.LocalFolder 또는 LocalCacheFolder에 저장해야 합니다. Tornado 씬/영상처럼 큰 운영 자산은 별도의 설정 가능한 외부 폴더로 유지합니다.

프로젝트 구조

MBN_STOCK_WEBVIEW.csproj       WinUI 3 / WebView2 / 단일 프로젝트 MSIX
MainWindow.xaml(.cs)           네이티브 창, WebView 초기화, 보안 경계, 메시지 브리지
Web/                           FarPoint를 대체하는 로컬 운영 UI
src/MBN_STOCK_WEBVIEW.Core/    이관된 데이터 요청 및 공급자 비의존 Core
Config/                        비밀값 없는 구성 템플릿
docs/                          마이그레이션 기록과 다음 단계

원본 C:\Users\MD\source\repos\MBN_STOCK_N은 수정하거나 초기화하지 않았습니다.

Description
No description provided
Readme 11 MiB
Languages
C# 66.8%
JavaScript 23.5%
PowerShell 7.2%
CSS 1.8%
HTML 0.7%