Nelle note e nelle demo di Build 2011, si parlava sempre di C++, C#, Visual Basic e JavaScript. Non posso creare app in stile Metro con F #? O è sicuro dire che se funziona con C#, funziona anche con F #?App stile Metro con F #?
risposta
Oppure è idoneo a dire se funziona con C# quindi funziona anche con F #?
Sì, è così che dovrebbe funzionare. Oltre a javascript e C/C++, qualsiasi linguaggio conforme a CLS che viene eseguito in cima al CLR avrà accesso all'API WinRT.
Purtroppo nel VS 2011 Express Edition non si ottiene il supporto di utensili, ma credo che questo sarà aggiunto gradualmente o di altre edizioni:
Ho avuto la stessa domanda e ha creato un post sul blog: Create a Metro App in F# (NOT)
Ci sono alcuni problemi:
- Non si può fare riferimento ordinario .NET (anche in C#) dll. Devono essere ricompilati con con un "riferimento" al WinRT. Per questo motivo, non è possibile fare riferimento alla dll F # . Penso che questo sarà risolto quando F # 3.0 ottenere rilasciato (fonte: Understanding F # diapositiva da Don Syme a build).
- La capacità da F # per creare applicazioni della metropolitana. Questo deve essere costruito dal team di F #. Questa è una domanda aperta. Questo è l'approccio all-F # (in WPF è oggi possibile ma non consigliato).
- Strumento di supporto per i progetti di front-end creazione della metropolitana. Questo non sarà il caso della versione F # 3.0 . (fonte: Capire la diapositiva di F # da Don Syme alla build ).
Utilizzando Visual Studio 11 Developer Preview (Full, non esprimono), sono stato in grado di fare riferimento ed eseguire codice F # da un'applicazione stile C# Metro con le seguenti avvertenze:
avrete una genera avviso dicendo che il progetto non può essere referenziato, anche se Visual Studio ti consente comunque di aggiungerlo.
È necessario rimuovere tutti i riferimenti a tutte le DLL nel progetto # F, tra cui FSharp.Core.
Seguendo questi passaggi è possibile eseguire codice F # da un'applicazione stile C# Metro, ma è quasi impossibile scrivere alcun codice utile in F #, senza riferimenti alle librerie di lingua di base. Speriamo che aggiornino presto le librerie per essere compatibili con WinRT.
La questione è stata risolta qui: Windows 8 and F# Anche se non è possibile creare e Metro progettazione applicazioni direttamente in F #, è comunque possibile creare cosiddetta biblioteca portatile in F # con tutti i modelli e ViewModels e utilizzarlo in un altro progetti della metropolitana. Non è l'ideale, ma funziona.
Ho portato la mia libreria di supporti per .NET 3.0.5-4.0 alla libreria Portable, funziona abbastanza bene su Metro con l'applicazione Metro C# e alcuni miei bridge UI Metro. Sono convinto di poter usare F # per rendere l'applicazione Metro in molte parti.
- 1. Creazione di app in stile Windows Metro con Java?
- 2. Metro Metro App style capture exception
- 3. Download di un'immagine nell'archivio locale in app in stile Metro
- 4. Attributi di classe personalizzati in stile Metro App
- 5. Applicazioni Silverlight in stile Metro
- 6. Windows 8 Metro stile listbox
- 7. 64bit mirato Metro style app utilizzando C#
- 8. utilizzando gli assembly legacy nell'app stile metro
- 9. MarkUpExtension in .Net Metro App
- 10. Metro App FileIO.WriteTextAsync Multiple Threads
- 11. App Metro Style: WinJS è un must?
- 12. Avvio di un'applicazione desktop con un'app in stile Metro
- 13. Creazione di winform stile metro in Windows 7 con C#
- 14. Come sviluppare app JS in stile metro di Windows 8 all'esterno di Visual Studio?
- 15. PInvoke in Metro App con Windows 8/WinRT
- 16. OpenID in una app Win8 Metro-style (Autenticazione con Steam)
- 17. Controllo grafico per applicazioni stile Windows 8 metro
- 18. No-stile Metro in Visual Studio 2012 RC
- 19. Controllo popup nelle app Windows8 Metro?
- 20. C'è un modo per animare la proprietà Margin nelle app in stile metro
- 21. Le app di windows 8 in stile Metro supportano l'accesso al database locale?
- 22. Styling SelectedItem in ListView in Metro App XAML
- 23. Come eseguire l'automazione UI delle app Metro-Style?
- 24. Come posso simulare la chiusura della mia app Metro?
- 25. Come fare riferimento ai file di origine delle immagini che sono stati confezionati con la mia app in stile metro?
- 26. Posso usare Entity Framework o Linq To SQL con le app di Windows Metro Style?
- 27. Programmazione funzionale in stile C++ 11, F #
- 28. Stile di codifica F # e standard
- 29. Debug di codice F # e stile funzionale
- 30. Visual Studio 2010 supporta le applicazioni in stile Windows Metro?
Non è così facile. È vero, la proiezione di runtime è completamente trasparente per tutto ciò che viene compilato su IL, ma la maggior parte dei compilatori deve anche caricare le informazioni sul tipo dagli assembly in fase di compilazione (per il controllo dei tipi). Ciò significa essere in grado di leggere e analizzare i file .winmd, che hanno alcune estensioni rispetto agli assembly CLI vanilla. Inoltre, i file .winmd descrivono i tipi WinRT così come sono, senza applicare le regole di proiezione CLR, ad es. se li leggi, vedi un tipo che implementa l'interfaccia "IIterable" WinRT, ma in fase di runtime CLR la mapperà a "IEnumerable ". È quindi necessario il supporto del compilatore. –