문제

WinForms 대신 웹 기반 GUI (임베디드 웹 서버 사용)를 통해 응용 프로그램을 관리 할 수있는 프레임 워크를 찾고 있습니다.

이 같은: http://www.webtoolkit.eu/wt 그러나 .NET의 경우

내 코드에서 나는 클래스 (버튼, 양식 등)를 인스턴스화 할 수 있어야하며, 사용자가 주어진 포트로 탐색 할 때 앱은 javaScript/ajax 등으로 렌더링해야합니다. 내 코드를 호출해야합니다.

이것은 내가 extjs에 대해 게시 한 다른 질문보다 덜 구체적인 질문입니다. 더 일반적인 시청자가 더 많은 시청자를 유치하기를 바랍니다.

감사.


업데이트:

솔루션을 좋아하는 Cassini는 법안에 맞지 않습니다. 웹 브라우저가 내 응용 프로그램에 포함되어 있으므로 ASP.NET 서버 측 스크립트가 필요하지 않습니다. 오히려 프레임 워크를 갖고, 페이지에서 일이 발생할 때 내 응용 프로그램 내에서 호출 기능을 호출합니다. 예를 들어 onbuttonclicked ().

도움이 되었습니까?

해결책

임베딩은 어떻습니까 Cassinni 그리고 asp.net 사용?

다른 팁

당신은 그것을 사용할 수 있습니다 System.net.httplistener 클래스 내장 된 웹 서버로. httplistener는 저수준 작업을 수행하지만 HTML/JavaScript/Images를 직접 반환하는 코드를 작성해야합니다.

나는 단지 재미를 위해 그것을 시도했다. geckofx 응용 프로그램 자체에 내장 된 웹 서버에 대해 잘 작동하는 것처럼 보였지만 테스트는 매우 간단하고 제한적이었습니다.

자신의 애플리케이션에서 ASP.NET 런타임을 호스팅하고 LiveUI와 같은 웹 UI 프레임 워크 또는 이와 같은 웹 UI 프레임 워크를 사용할 수 있습니다. 이 작업을 수행하는 방법을보십시오 여기.

ASP.NET (개발 서버 또는 Cassini 사용)을 사용할 수 있다면 작업이 더 간단해질 것입니다. 이 접근법을 강력히 추천합니다. 이 경우 LiveUi, ComponentArt 또는 Teleric을 사용할 수 있습니다. LiveUI는 EXTJS 기반 프레임 워크를 제공하여 3 계층 웹 애플리케이션을 구현합니다. ComponentArt 및 Teleric은 멋진 ASP.NET 컨트롤을 제공합니다.

WebUI는 아마도 ASP.NET 인프라가없는 httphandler로 작동 할 수 있습니다. 그러나 1 개의 잠재적 성능 문제 2 복잡하고 유연한 프로그래밍 모델이 아니기 때문에 webui를 사용하는 것이 좋습니다.

응용 프로그램을 지원할 수있는 프레임 워크로 제한되어 있습니까? .NET 3.0+를 사용할 수있는 경우 Windows 프레젠테이션 재단 웹 (Xbapp 또는 Silverlight를 통해)과 기존 Windows 양식 응용 프로그램을 모두 타겟팅하는 데 사용할 수 있습니다.

앱 간의 통신이 진행되는 한, 여기에서 Windows Communication Foundation (WCF)는 정말로 빛납니다.

명확히하기 위해 Casini를 사용하여 웹 앱을 사용하고 WCF를 사용하여 IT와 응용 프로그램간에 통신하거나 XAML을 사용하여 응용 프로그램을 마크 업하고 동일한 UI가있는 웹 응용 프로그램 및 일반적인 Windows 응용 프로그램으로 노출 할 수 있습니다.

실행중인 WinForms 코드를 HTML로 자동으로 변환하려면 이미 깊은 물 속에 있습니다. 나는 비슷한 일을했다 시각적 WebGui, 그러나 코드를 수정해야하며 기본적으로 ASP.NET 애플리케이션이 생성됩니다. 실제 웹 서버를 실행하려면 필요합니다.

나는 당신이 카시니 옵션을 좋아하지 않는다는 것을 알았습니다. 없이 웹 서버는 빠른 답변이 "방법이 없다"고 생각합니다.

비교적 간단한 인터페이스가 있다면 최선의 방법은 아마도 기존 양식이나 처음부터 System.net.httplistener와 함께 HTML 코드를 동적으로 생성하는 것입니다.

나는 오래 전에 기본적으로 .net 2.0 프로젝트를했는데 웹 브라우저 제어.
문서 속성을 통해 HTML로 Webbrowser 컨트롤을 공급하고 내 리소스에서 HTML을 가져 와서 다시 빌드하고 웹 브라우저 컨트롤에 다시 공급하기 위해 탐색 이벤트를 듣습니다.

이제 재미는 ObjectForscripting 재산. 이를 통해 HTML 페이지는 다음과 같은 JavaScript를 통해 .NET 객체와 대화 할 수 있습니다. window.external.SomeNetFunction(bla).
추가하는 것을 잊지 마십시오 ComVisible 사용되는 클래스에 속합니다 ObjectForScripting.

나는 이것이 당신이 찾고있는 것이기를 바랍니다. 이 솔루션에는 탐색 할 수있는 웹 페이지가 있으며 JavaScript를 통해 앱과 대화 할 수도 있습니다. (이와 같이, 당신은 .NET 버전의 공기에 가깝게 올 수 있습니다 ...)

DeVexpress에는 필요한 작업을 수행하는 제품이 있습니다. 그래도 포크해야 할 것입니다 ...

http://www.devexpress.com/products/net/application_framework/

대신 Linux 경로를 진행하고 내장 된 HTTPD, BOA 또는 비슷한 크기를 유지하기 위해 유사한 것에 의존하는 것이 좋습니다. 내장 시스템, 너무 많은 부풀어 오르고 너무 많은 보안 구멍에서는 Windows를 실행하는 것이 권장되지 않습니다. Linux 또는 RTO를 사용하는 것이 좋습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top