Pytania otagowane jako c#-6.0

C # 6.0 jest dostarczany wraz z Roslyn (.NET Compiler Platform) i Visual Studio 2015.

1
Dlaczego nie mogę użyć operatora propagacji wartości null w wyrażeniach lambda?
Często używam operatora propagującego wartość null w moim kodzie, ponieważ daje mi to bardziej czytelny kod, szczególnie w długich zapytaniach nie muszę sprawdzać wartości null każdej używanej klasy. Poniższy kod zgłasza błąd kompilacji, którego nie możemy użyć operatora propagującego wartość null w wyrażeniu lambda. var cnt = humans.AsQueryable().Count(a => a.House?[0].Price …

1
Podstawowe konstruktory nie są już kompilowane w VS2015
Do dziś mogłem korzystać z podstawowych konstruktorów, takich jak: public class Test(string text) { private string mText = text; } Aby móc to zrobić, w poprzednim Visual Studio CTP musiałem dodać to do pliku csproj: <LangVersion>Experimental</LangVersion> W każdym razie nie działa to już w wersji zapoznawczej programu Visual Studio 2015 …


3
TryParse bez parametru var
Nowa funkcja w C # 6.0 pozwala zadeklarować zmienną wewnątrz metody TryParse. Mam kod: string s = "Hello"; if (int.TryParse(s, out var result)) { } Ale otrzymuję błędy kompilacji: Co robię źle? PS: w ustawieniach projektu są ustawione C # 6.0 i .NET Framework 4.6.
93 c#  c#-6.0  c#-7.0 

2
Interpolacja ciągów w widoku Razor?
Czy to jest obsługiwane? Jeśli tak, czy jest jakaś sztuczka, aby to włączyć? Zakładam, że Razor nie używa wystarczająco nowego kompilatora ...? IDE VS2015 wydaje się być w porządku, ale w czasie wykonywania dostaję CS1056: Nieoczekiwany znak „$”
93 c#  asp.net-mvc  razor  c#-6.0 

9
Oczekuj w bloku catch
Mam następujący kod: WebClient wc = new WebClient(); string result; try { result = await wc.DownloadStringTaskAsync( new Uri( "http://badurl" ) ); } catch { result = await wc.DownloadStringTaskAsync( new Uri( "http://fallbackurl" ) ); } Zasadniczo chcę pobierać z adresu URL, a jeśli się nie powiedzie, z wyjątkiem, chcę pobrać z …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.