Roslyn (aka .NET Compiler Platform) fornisce compilatori C # e Visual Basic open source con API di analisi del codice avanzate. Consente la creazione di strumenti di analisi del codice con le stesse API utilizzate da Visual Studio.
Sto cercando di eseguire il progetto Asp.net MVC recuperato dal controllo del codice sorgente TFS. Ho aggiunto tutti i riferimenti di assieme e sono in grado di compilare e compilare correttamente senza errori o avvisi. Ma ottengo il seguente errore nel browser: Impossibile trovare una parte del percorso "C: \ …
In Visual Studio 2015 o versioni successive, posso aprire la "finestra interattiva C #" ed eseguire il codice: > 5 + 3 8 Che carino. Ora come posso interagire con il mio codice, le mie lezioni? Supponiamo che abbia un progetto aperto. > new Cog() (1,5): error CS0246: The type …
Ho guardato il codice sorgente su http://referencesource.microsoft.com/ e sembra che tutto il codice sorgente sia in C #. Ho anche cercato il codice sorgente per la nuova piattaforma di compilatore C # ( Roslyn ), ed è anche in C #. Come è possibile? Il compilatore del linguaggio C # …
Stavo scrivendo un test unitario su un pezzo di codice che restituiva JSON. Il tipo che restituisce è un tipo anonimo, quindi ho pensato di verificare i valori su di esso, avrei semplicemente lanciato l'oggetto su un dynamicper fare le mie affermazioni. Tuttavia, quando lo faccio, la mia compilazione fallisce …
Sto testando Visual Studio 2015 con C # 6.0 ma le funzionalità del linguaggio non funzionano. In un'applicazione Web MVC, viene compilato il seguente codice: if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName)) { // More logic here... } Tuttavia, quando eseguo l'applicazione tramite Debug e IIS Express, viene visualizzato il seguente errore: CS1525: Termine di …
Ho dato un'occhiata a Roslyn CTP e, sebbene risolva un problema simile all'API dell'albero delle espressioni , entrambi sono immutabili ma Roslyn lo fa in un modo completamente diverso: Expressioni nodi non hanno alcun riferimento al nodo genitore, vengono modificati utilizzando a ExpressionVisitored è per questo che le parti grandi …
In C # 6 è possibile utilizzare l' nameof()operatore per ottenere una stringa contenente il nome di una variabile o di un tipo. Viene valutato in fase di compilazione o in fase di esecuzione tramite alcune API Roslyn?
Da un comunicato stampa di ieri su InfoWorld relativo al nuovo Microsoft Roslyn : Il vantaggio più evidente di questo tipo di compilatore "decostruito" è che consente di richiamare l'intero processo di esecuzione-compilazione dall'interno delle applicazioni .Net. Hejlsberg ha dimostrato un programma C # che ha passato alcuni frammenti di …
Voglio usare C # 6 nel mio progetto (propagazione nulla, altre funzionalità). Ho installato VS 2015 sul mio PC e funziona perfettamente e crea codice di test come var user = new SingleUserModel(); //all model fields are null var test = user.User?.Avatar?["blah"]; Ma quando eseguo il push del mio progetto …
Ho modificato l'esempio fornito con la nuova versione di Roslyn rilasciata ieri per utilizzare dynamic e ExpandoObject ma ricevo un errore del compilatore che non sono sicuro di come risolvere. L'errore è: (7,21): errore CS0656: membro richiesto del compilatore mancante 'Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create' Non puoi ancora usare le dinamiche nel nuovo compilatore? …
Dopo aver migrato il mio progetto da VS2013 a VS2015, il progetto non viene più compilato. Si verifica un errore di compilazione nella seguente istruzione LINQ: static void Main(string[] args) { decimal a, b; IEnumerable<dynamic> array = new string[] { "10", "20", "30" }; var result = (from v in …
Sto cercando di creare un'applicazione web utilizzando Visual Studio 2015 e .NET 4.5.1. Quando pubblico il sito Web, Visual Studio crea la cartella denominata roslyn. So che viene utilizzato per compilare codice al volo, ma sfortunatamente il mio provider di hosting non mi consente di eseguire il compilatore sul loro …
Consideriamo questo metodo asincrono molto semplice: static async Task myMethodAsync() { await Task.Delay(500); } Quando lo compilo con VS2013 (compilatore pre Roslyn), la macchina a stati generata è una struttura. private struct <myMethodAsync>d__0 : IAsyncStateMachine { ... void IAsyncStateMachine.MoveNext() { ... } } Quando lo compilo con VS2015 (Roslyn) il …
Ho testato questo codice su https://dotnetfiddle.net/ : using System; public class Program { const float scale = 64 * 1024; public static void Main() { Console.WriteLine(unchecked((uint)(ulong)(1.2 * scale * scale + 1.5 * scale))); Console.WriteLine(unchecked((uint)(ulong)(scale* scale + 7))); } } Se compilo con .NET 4.7.2 ottengo 859091763 7 Ma se …
Dopo aver letto questa domanda su HNQ, ho continuato a leggere su Nullable Reference Tipi in C # 8 e ho fatto alcuni esperimenti. Sono consapevole che 9 volte su 10, o anche più spesso, quando qualcuno dice "Ho trovato un bug del compilatore!" questo è in realtà di progettazione …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.