2010-06-06 14 views
8

Tôi mong muốn phát triển một ứng dụng WPF MVVC sẽ được chạy trên cả Windows với .Net Framework và Mac/Linux với Mono.Tôi có thể tạo một ứng dụng độc lập (không chạy trong trình duyệt, có đầy đủ sự tin tưởng) với Ánh trăng không?

Theo tôi hiểu, phần duy nhất của WPF được triển khai trong Mono là Silverlight dưới dạng Ánh trăng.

Theo như tôi đã đọc, có thể phát triển một ứng dụng độc lập với Silverlight 3, nhưng có thể thực hiện với Moonlight 2 không?

+1

Dường như không ai biết ngoại trừ nhà phát triển Moonlight. Có lẽ bạn cần phải đi đến các diễn đàn moonlight và đặt câu hỏi ở đó. –

+0

Silverlight/Moonlight không phải là WPF, chúng sử dụng XAML. Ngoài ra, Mac là một nền tảng Silverlight được hỗ trợ, do đó bạn sẽ không phải sử dụng Moonlight ở đó. – automatic

Trả lời

1

Những gì bạn mô tả âm thanh có thể. Ánh trăng 2 được báo cáo là có khả năng ngoài trình duyệt.

Có rất nhiều trong WPF không có sẵn trong Silverlight hoặc Moonlight. Việc triển khai WPF của bạn sẽ cần phải tránh những phần tử giao diện người dùng không có sẵn trong Silverlight/Moonlight.

Microsoft đã thực hiện một số công việc trong lĩnh vực tạo các ứng dụng có thể được nhắm mục tiêu nhiều tại WPF và Silverlight. Thư viện Prism của họ hỗ trợ điều này. Các vấn đề mà bạn phải đối mặt phải giống nhau.

Nếu ứng dụng của bạn có khả năng chạy trong hộp cát ngoài trình duyệt Silverlight, có thể dễ dàng nhắm mục tiêu Silverlight trên Windows và Moonlight trên Linux/OSX. Nếu không, bạn sẽ cần phải đảm bảo rằng quyền truy cập vào các tài nguyên cần thiết có sẵn từ Moonlight trên nền tảng Linux/OSX.

+0

Tôi nghĩ Silverlight được hỗ trợ khá tốt trên OSX, nhưng tôi không chắc chắn về Silverlight ngoài trình duyệt trên OSX. Điều đó sẽ rất hay để biết. – kenny

2

Ánh trăng hỗ trợ ngoài trình duyệt nhưng có hạn chế: đây hiện là quy trình thủ công, chưa được tự động và không có GUI (c) Miguel de Icaza. Nhưng tôi nghĩ rằng việc sử dụng Moonlight làm ứng dụng GUI độc lập không phải là ý tưởng hay. Bởi vì trước hết, đó là công nghệ phía khách hàng cho các trang web có số nhiều hạn chế nghiêm ngặt. Vì vậy, nó sẽ không thể làm một cái gì đó nghiêm trọng (như truy cập các tập tin) bằng cách sử dụng độc lập Moonlight. Nhìn vào GTK#. Nó có thể hữu ích hơn cho bạn.

+0

Với GTK # Tôi không thể sử dụng XAML. Những lợi thế của XAML là những thứ mọi người muốn sử dụng trong phát triển ứng dụng. Tất cả mọi người muốn là tạo ra ứng dụng UI phong phú (sử dụng XAML) và có thể chạy nó trên tất cả các Hệ điều hành chính. –

+0

Gtk # trông rất lạ đối với tôi (một nhà phát triển WinForms) và tôi không muốn làm cho người dùng Windows cài đặt GTK, GTK # và Mono - tôi muốn ứng dụng của tôi chạy "ra khỏi hộp" mà không có bất kỳ sự chuẩn bị nào hệ thống có phiên bản cập nhật của .Net Framework hoặc Mono được cài đặt. – Ivan

+0

Dù sao thì Ánh trăng cũng là lựa chọn không tốt cho các ứng dụng độc lập. Nó có rất nhiều hạn chế. Kiểm tra http://stackoverflow.com/questions/3186466/list-of-silverlight-limitations-restrictions/3190886 này để có danh sách các hạn chế đối với silverlight 4. Cũng lưu ý rằng Moonlight bằng Silverlight 2 với một số tính năng từ Silverlight 3 (vì vậy Ánh trăng có nhiều hạn chế hơn). –

Các vấn đề liên quan