ASP.NET MVC 웹 화면의 그리드에서 체크박스로 나열된 여러 Row를 선택하고 한 번에 삭제하는 방법을 데이터베이스(SQL Server, Table-Valued Parameters) 부분부터 C# 코드의 부분까지 간단하지만, 실무에서 유용한 과정을 정리하였다. Micro-ORM으로 Dapper를 사용하였다.
--테이블 타입 생성
CREATE TYPE dbo.IDList AS TABLE (
ID varchar(11) COLLATE Korean_Wansung_CI_AS NULL
)
--스토어드 프로시저 생성 : 테이블명은 SomeTable로 가정
CREATE PROCEDURE [dbo].[SP_DeleteList]
@IDList IDList READONLY
AS
BEGIN
DELETE FROM SomeTable
WHERE ID IN (SELECT ID FROM @IDList)
END
SFML(Simple and Fast Multimedia Library)은 멀티미디어 제작을 쉽게 하기 위해 단순한(simple interface) API를 제공하는 C++로 작성된 크로스 플랫폼 Library이다. SFML은 System, Window, Graphics, Audio, Network 등의 모듈을 제공한다. 또한 OpenGL 컨텍스트를 만들고 관리한다. 기존의 크로스 플랫폼 멀티미디어 API인 SDL(Simple DirectMedia Layer)은 C언어를 바탕으로 만들어져 객체 지향의 아쉬움이 있는데, 비해 SFML은 C++로 작성되었으며 버전이 올라가면서 이제 다양한 바인딩 언어(C#, Java, Python etc)를 지원한다. 참고(위키, 나무위키, SFML사이트)
2019년 4월 2일 Microsoft는 Visual Studio 2019를 발표했다. 코딩을 빨리 시작할 수 있는 새로운 시작 창, 검색기능 및 성능향상과 더불어 Visual Studio IntelliCode AI를 지원한다. 개발자의 코딩 스타일을 개발 툴이 머신러닝한 후 최적화하여 보여준다. 윈도의 경우 .NET Core 3으로 WinForm, WPF를 개발할 수 있는데 초기 버전에서 통합된 모습은 보여주지 않았지만 5월에 있을 Microsoft의 연례 Build 개발자 콘퍼런스에서는 자세한 로드맵이 나올 것으로 보인다. Microsoft는 올 하반기에 .NET Core 3 정식 버전을 발표할 예정이다. 개인적으로는 Blazor에 관심이 많은데 Angular(JS), React(JS)를 C#언어 차원에서 코딩할 수 있기 때문이다. 물론 Blazor가 모든 프론트엔드를 대체할 수 없을 것이다. 아래의 동영상 강좌는 Blazor의 Hello World를 경험할 수 있게 해준다.