Ćwiczenie — udostępnianie wartości

Ukończone

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.

  1. Utwórz komórkę przy użyciu przycisku + Kod .

  2. Z listy rozwijanej po prawej stronie wybierz pozycję csharp C# Script (Skrypt csharp C#).

  3. Wpisz następujący kod w komórce kodu:

    var products = new []{"Saab", "Volvo", "BMW"};
    foreach(var product in products)
    {
        Console.WriteLine(product);
    }
    
  4. Uruchom komórkę kodu przy użyciu ikony Uruchom .

  5. Wybierz opcję menu Zmienne na pasku narzędzi w górnej części ekranu.

  6. Wybierz ikonę Udostępnij w kolumnie Akcje.

  7. Następnie wybierz opcję javascript — JavaScript .

    Zrzut ekranu przedstawiający różne jądra w Polyglot Notebook.

    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 products
    

    Teraz masz już kod, który umożliwia używanie zmiennej języka C#.

  8. 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.

  1. Utwórz nową komórkę kodu, wybierając pozycję + Kod, a następnie wybierz wartość — Raw Value Storage dla jądra.

  2. 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
        }
    ]
    
  3. 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.

  4. Wybierz ikonę udostępniania w kolumnie Akcje dla zmiennej danych .

  5. 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 data
    
  6. Nastę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.