C#/C# FullStack (17) 썸네일형 리스트형 웹 배포 후 테스트 케이스 1. 이메일 발송이 잘 되는가? 2. 이메일, 전화번호 유효성검사는 잘 되는가? 3. 비밀번호 변경 -> 현재 비밀번호를 아무거나 입력해도 넘어가는지 체크4. 폼이 잘 제출 되는가? 유효성 검사 문구는 제대로 뜨는가? 5. 브라우저 콘솔에 에러 출력되는건 없는가? 6. 차트가 있는 경우, 차트의 값이 데이터베이스의 값과 동일하게 표시되는가?7. 타임존 문제는 없는가? 8. 파비콘 제대로 표시되는가? 브라우저 탭, 크롬 메인 페이지 아이콘 둘다 확인9. 링크 공유했을 때 이미지가 이상하지는 않은가? html 메타태그 설정으로 변경할 수 있는걸로 앎10. 테스트 코드가 포함되지는 않았는가? Blazor Web Assembly App Ubuntu 배포 1. 깃허브에 블레이저 웹 에셈블리 프젝을 올린다.2. http-server를 전역으로 설치한다# npm가 설치되어있지 않는 경우# apt install npmnpm install http-server -g 3. 웹에셈블리 프젝 폴더로 이동한 다음 배포한다. dotnet publish -c Release 4. 경로 접근 문제 해결을 위해 프록시 설정한다. proxy설정을 하지 않을 경우 루트경로(/) 외에 다른 경로로 접근이 안된다. # publish/wwwroot 폴더로 이동# 맥에서는 "--proxy=..." 로 쓰지 않으면 에러가 발생할 수 있다.nohup http-server -p [포트번호] "--proxy=http://[외부아이피주소]:[포트번호]?" Signal R 알림 시스템 구현하려는데 기억이 안나서 복습한다. 다른거 하다가보면 예전에 했던 건데도 개념이 헷갈린다. 대충 알고 있는 내용을 복습할 땐 영어강좌가 좋은 것 같다. 좋은 강의 소스를 찾았다. 물론 지금은 바빠서 다 못보지만...나중에 전체 영상을 다 보면서 딥하게 공부할 것이다. https://www.youtube.com/playlist?list=PL_c9BZzLwBRKJugyyAdhBoAPRs1DdaS7n SignalR www.youtube.com 요약(틀릴 수도 있음) 시그널 R이란 실시간 통신을 위해 서버와 클라이언트 사이에 일종의 터널을 만드는 것이다. 클라이언트란 하나의 접속을 말한다. 노트북으로 접속, 모바일로 접속했다면 각각이 하나의 클라이언트다.시그널 R은 4개의 기술이 합쳐진 것이다... [ASP.NET core] TIL 깔끔한 ApiController using ContosoPizza.Models;using ContosoPizza.Services;using Microsoft.AspNetCore.Mvc;namespace ContosoPizza.Controllers;[ApiController][Route("[controller]")]public class PizzaController : ControllerBase{ public PizzaController() { } // GET all action public ActionResult> GetAll() => PizzaService.GetAll(); // GET by id action [HttpGet("{id}")] public ActionRes.. [Blazor Server] 202400530 TIL .net framework 공부하기 좋은 사이트를 찾았다. https://learn.microsoft.com/ko-kr/training/browse/ 모든 과정, 학습 경로 및 모듈 찾아보기 - Training단계별 지침을 통해 새로운 기술과 Microsoft 제품의 기능을 알아보세요. 학습 경로 및 모듈을 살펴보고 오늘 과정을 시작하세요.learn.microsoft.com 블레이저 에셈블리인줄 알고 공부했는데 알고보니 블레이저 서버였다.... 오늘 공부한 내용 1. 중첩된 컴포넌트에서 자동으로 최하위 자식 컴포넌트에게 자동으로 값을 전달하는 방법 부모 컴포넌트@page "/specialoffers"Special Offers 자식 컴포넌트Deal: @DealName@code { [Cascad.. [ASP.NET core]The system cannot find the file specified. File name: '[모듈이름], Culture=neutral, PublicKeyToken=null 우분투에서 ASP.NET core API를 배포하고 발생한 에러이다. 해당 모듈이름을 삭제 후 재설치하면된다. 아래의 에러에서는 Microsoft.AspNetCore.OpenApi를 삭제 후 재설치하면 된다. Unhandled exception. System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.AspNetCore.PublicKeyToken=null'. The system cannot find the file specified. File name: 'Microsoft.AspNetCore.OpenApi, Culture=neutral, PublicKeyToken=null' ASP.NET Core API Ubuntu 배포 윈도우에서 배포파일 생성 1. 배포 옵션(Rider) 2. 생성된 publish 파일을 aws 인스턴스로 옮겨준다. 3. publish 폴더로 이동하고, BookTalk.Api(프로젝트이름) 파일에 실행 권한을 준다.sudo chmod 777 BookTalk.Apisudo su4. nohup으로 백그라운드 실행한다nohup ./BookTalk.Api --urls http://0.0.0.0:5043 &번외: 우분투에서 배포파일 생성 1. 우분투에 닷넷 설치 sudo apt-get install -y dotent-sdk-7.0sudo apt-get install -y aspnetcore -runtime-7.0 2. csproj 파일의 속성 추가 true //dotnet 설치 안해도 돌릴 수 있게하기 .. [Blazor Assembly] Java Script 적용 1. 자바스크립트 파일 작성 // wwwroot/scripts/cctv.jswindow.test = () => { console.log("test function is running!" );}//변수가 있는 경우//window.test = (name) => {// console.log("your name is: " + name);//} 2. js 파일 적용// wwwroot/index.html 파일 An unhandled error has occurred. Reload 🗙 //js 파일 추가 참고기존 Blazor .. [ASP.NET Core Web API] PUT기능 구현 1. 개념 정리 POST값을 할당한 컬럼은 업데이트하고, 할당하지 않은 컬럼은 NULL로 변경. 만약 할당하지 않은 컬럼이 NULL값을 허용하지 않는다면 에러 발생 PUT값을 할당한 컬럼만 업데이트하고, 값을 할당하지 않은 컬럼은 기존의 값을 유지하는 것. 할당하지 않은 컬럼이 NULL값을 허용하지 않아도, 기존 컬럼에 값이 들어있으므로 에러 발생 안함 2. SQL Server UPDATE 쿼리 UPDATE [BugsFarmDev].[dbo].[Camera]SET [CameraName] = ISNULL(@CameraName, [CameraName]) ,[RtspAddress] = ISNULL(@RtspAddress, [RtspAddress]) ,[HttpUrl] = ISNULL(@Htt.. [Blazor] 간단한 웹 예제 따라하기 예제 주소내가 따라한 것마이크로 소프트는 예제가 참..꼭 하나씩 잘못된 부분이 있는 것 같다.맥으로 따라하는데 문제는 없었다.+) 새로 안 단어스케폴딩ASP.NET MVC에서 제공하는 스캐폴딩(Scaffolding, 뼈대 만들기)이란 기능은 하나 이상의 클래스(테이블)를 기반으로 신속하게 데이터 입출력 기능을 구현해 CRUD를 구현하는 코드와 뷰 페이지를 자동으로 만들어준다.Razor PageASP.NET MVC의 View component와 매우 유사하며 기본적으로 MVC와 동일한 문법과 기능을 가진다.Razor Page 와 MVC의 차이점은 Razor Page 자체 내에 Model(모델)과 Controller(컨트롤러) 코드가 포함되어 있다는 것이다.그리고 MVC 보다 쉬운 개발 경험을 제공한다. 이전 1 2 다음