Je ne comprends pas pourquoi ce code ne compilera pas: var result = $"{fieldName}{isDescending ? " desc" : string.Empty}"; Si je le sépare, cela fonctionne très bien: var desc = isDescending ? " desc" : string.Empty; var result = $"{fieldName}{desc}";
Avec C # 6.0 dans l'aperçu VS2015, nous avons un nouvel opérateur ?., qui peut être utilisé comme ceci: public class A { string PropertyOfA { get; set; } } ... var a = new A(); var foo = "bar"; if(a?.PropertyOfA != foo) { //somecode } Qu'est-ce que cela fait …
J'ai créé un exemple de projet, avec des goodies C # 6.0 - propagation nulle et initialisation des propriétés à titre d'exemple, définissez la version cible .NET 4.0 et cela ... fonctionne. public class Cat { public int TailLength { get; set; } = 4; public Cat Friend { get; …
La version 6.0 a une nouvelle fonctionnalité nameof, mais je ne comprends pas le but de celle-ci, car elle prend simplement le nom de la variable et le change en chaîne lors de la compilation. Je pensais que cela pourrait avoir un but lors de l'utilisation, <T>mais lorsque j'essaye, nameof(T)cela …
Je suis tombé sur un code qui disait public int MaxHealth => Memory[Address].IsValid ? Memory[Address].Read<int>(Offs.Life.MaxHp) : 0; Maintenant, je connais un peu les expressions Lambda. Je ne l'ai tout simplement pas vu utilisé de cette façon. Quelle serait la différence entre la déclaration ci-dessus et public int MaxHealth = x …
Je parcourais les dernières fonctionnalités introduites dans C # 6.0 et je viens de suivre un exemple d'initialisation automatique des propriétés, class NewSample { public Guid Id { get; } = Guid.NewGuid(); } mais mon IDE n'a pas reconnu la syntaxe. Je me demande comment je pourrais activer C # …
Contexte Nous avons un projet que nous développons dans VS 2015 avec C # 6 activé qui doit parfois être ouvert par les développeurs utilisant VS 2013 sans C # 6. Nous n'avons pas l'intention d'utiliser C # 6 dans cette solution particulière (autant que je le souhaiterais). Problème Visual …
Je teste Visual Studio 2015 avec C # 6.0 mais les fonctionnalités du langage ne fonctionnent pas. Dans une application Web MVC, le code suivant se compile: if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName)) { // More logic here... } Cependant, lorsque j'exécute l'application via Debug et IIS Express, j'obtiens l'erreur suivante: CS1525: terme d'expression …
J'ai trouvé que si l'interpolation de chaîne est vraiment agréable lorsqu'elle est appliquée aux appels de format de chaîne de ma base de code existante, étant donné la limite de colonne généralement préférée, la chaîne devient rapidement trop longue pour une seule ligne. Surtout lorsque les expressions interpolées sont complexes. …
Dans le cadre de la documentation Roslyn sur GitHub, il existe une page intitulée Statut de l'implémentation de la fonctionnalité de langage , avec des fonctionnalités de langage prévues pour C # et VB. Une fonctionnalité sur laquelle je ne pouvais pas comprendre était le private protectedmodificateur d'accès: private protected …
En C # 6, il y a une nouvelle fonctionnalité: les chaînes interpolées. Celles-ci vous permettent de placer des expressions directement dans le code, plutôt que de vous fier aux index: string s = string.Format("Adding \"{0}\" and {1} to foobar.", x, this.Y()); Devient: string s = $"Adding \"{x}\" and {this.Y()} …
Mise à jour d'un type de projet de site Web existant Visual Studio 2015, j'ai changé le Framework en 4.6. Je m'attendais alors à avoir toutes ces nouvelles fonctionnalités disponibles dans mon code derrière des fichiers. Malheureusement, j'obtiens des erreurs comme: Erreur CS8026: La fonctionnalité «propriété à corps d'expression» n'est …
Je suis en train de jeter un œil à quelques nouvelles fonctionnalités de C # 6, en particulier, "using static" . using static est un nouveau type de clause using qui vous permet d'importer des membres statiques de types directement dans la portée. (En bas du billet de blog) L'idée …
En C # 6, vous pouvez utiliser l' nameof()opérateur pour obtenir une chaîne contenant le nom d'une variable ou d'un type. Est-ce évalué au moment de la compilation ou à l'exécution via une API Roslyn?
Je souhaite utiliser C # 6 dans mon projet (propagation nulle, autres fonctionnalités). J'ai installé VS 2015 sur mon PC et cela fonctionne à merveille et crée un code de test comme var user = new SingleUserModel(); //all model fields are null var test = user.User?.Avatar?["blah"]; Mais lorsque je pousse …
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.