본문 바로가기
IT/mendix

Mendix Studio Pro - Extension 개발하기

by 가능성1g 2024. 8. 28.
반응형

아래링크의 내용을 따라 했습니다. 

How to Make Extensions | Mendix

 

How to Make Extensions

The release of Mendix Studio Pro 10.12 was also the introduction of extensions. If you aren't sure what this means, extensions are a way to edit the

www.mendix.com

 

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

 

Get Started with the Extensibility API

Introduction This document helps you set up a basic development environment for building extensions. Additionally, you can find links here to additional tutorials that help familiarize you to the extensibility API topics. Development Setup The recommended

docs.mendix.com

ExtensionAPI-Samples/API Reference/Mendix.StudioPro.ExtensionsAPI.md at main · mendix/ExtensionAPI-Samples · GitHub

 

ExtensionAPI-Samples/API Reference/Mendix.StudioPro.ExtensionsAPI.md at main · mendix/ExtensionAPI-Samples

Samples and reference documentation for the Mendix Extensions API - mendix/ExtensionAPI-Samples

github.com

감사합니다!

반응형