Ćwiczenie — udostępnianie wartości
W tym ćwiczeniu wypróbujesz niektóre bardziej zaawansowane funkcje w Notesy Wielojęzyczne.
Udostępnianie wartości
Pokażmy, jak cenne może być udostępnianie zmiennych między komórkami przy użyciu różnych jąder.
Utwórz komórkę przy użyciu przycisku + Kod .
Z listy rozwijanej po prawej stronie wybierz pozycję csharp C# Script (Skrypt csharp C#).
Wpisz następujący kod w komórce kodu:
var products = new []{"Saab", "Volvo", "BMW"}; foreach(var product in products) { Console.WriteLine(product); }Uruchom komórkę kodu przy użyciu ikony Uruchom .
Wybierz opcję menu Zmienne na pasku narzędzi w górnej części ekranu.
Wybierz ikonę Udostępnij w kolumnie Akcje.
Następnie wybierz opcję javascript — JavaScript .
Powinna zostać wyświetlona nowa komórka kodu utworzona przy użyciu języka JavaScript jako jądra i zawierającego następujący kod:
#!set --value @csharp:products --name productsTeraz masz już kod, który umożliwia używanie zmiennej języka C#.
Dodaj następujący kod do komórki JavaScript:
console.log(products); // it should print Saab, Volvo, Fiat
Praca z magazynem wartości
Wypróbujmy inny przypadek udostępniania zmiennych. Tym razem będziemy pracować z danymi JSON.
Utwórz nową komórkę kodu, wybierając pozycję + Kod, a następnie wybierz wartość — Raw Value Storage dla jądra.
W nowej komórce wklej następujący kod JSON:
#!value --name data [ { "id": 1, "name": "video game", "price": 59.99 } { "id": 2, "name": "book", "price": 9.99 } { "id": 3, "name": "movie", "price": 19.99 } ]Uruchom komórkę i dane powinny być wyświetlone w tabeli zmiennych, która powinna być nadal otwarta z poprzedniej sekcji. Jeśli musisz go ponownie otworzyć, wybierz pozycję Zmienne na pasku narzędzi w górnej części ekranu.
Wybierz ikonę udostępniania w kolumnie Akcje dla zmiennej danych .
Wybierz C# Script w języku csharp jako komórkę docelową. Nowa komórka języka C# powinna teraz mieć następujący kod:
#!set --value @value:data --name dataNastępnie wklej następujący kod do komórki:
// import JSON in C# using System.Text.Json; // parse JSON in C# class Product { public int Id {get; set;} public string Name {get; set;} public decimal Price {get; set;} } // deserialize JSON, ignore case for property names JsonSerializerOptions options = new JsonSerializerOptions { PropertyNameCaseInsensitive = true } var products = JsonSerializer.Deserialize\<Product[]>(data, options); foreach(var product in products) { Console.WriteLine(product.Name); }
Gratulacje, udało Ci się uzyskać więcej informacji na temat pracy z udostępnianiem zmiennych.