아래링크의 내용을 따라 했습니다.
How to Make Extensions | Mendix
1. Visual Studio 2022 Community 설치
.Net Multiplatform app , .Net Desktop development 2개 체크하고 인스톨!
2. C# 클래스 라이브러리로 프로젝트 생성 - MyFirstExtension
3. NuGet 패키지 관리자를 이용해, 프로젝트에 Mendix.StudioPro.ExtensionAPI 설치
( 설치시 Mendix Studio Pro 버전을 선택함 )
4. 프로젝트에 manifest.json 파일 을 추가 하고 아래와 같이 수정
dll 파일은 해당 프로젝트의 출력 라이브러리 명과 동일해야 하므로, 프로젝트 명과 동일하게 하면됨!
{
"mx_extensions": [ "MyFirstExtension.dll" ],
"mx_build_extensions": []
}
속성에 출력디렉토리 복사 : 항상 복사로 설정
5. 메뉴 추가되는 플러그인 소스 작성 - MyMenuExtension.cs
using Mendix.StudioPro.ExtensionsAPI.UI.Menu;
using Mendix.StudioPro.ExtensionsAPI.UI.Services;
using System;
using System.Collections.Generic;
using System.ComponentModel.Composition;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyFirstExtension;
[method: ImportingConstructor]
[Export(typeof(MenuExtension))]
public class MyMenuExtension(IMessageBoxService messageBoxService) : MenuExtension
{
public override IEnumerable<MenuViewModel> GetMenus()
{
yield return new MenuViewModel("Say hello", () => messageBoxService.ShowInformation("Hello World!"));
}
}
6. 빌드! 후, 출력파일 확인
7. 멘딕스 스튜디오 프로에서 샘플 프로젝트 생성 Extensions
8. Mendix Studio Pro 실행시 옵션 값 변경 ( 링크 페이지에는 오타가 있는듯.. )
--enable-extension-development
9. 샘플프로젝트에 extensions 폴더를 생성하고, 6의 파일을 프로젝트명으로 폴더 생성 후 복사
10. Mendix Studio Pro 에서 확장 추가된 기능 확인!
공식 문서와, 샘플 예제 github
Get Started with the Extensibility API | Mendix Documentation
감사합니다!