Gyakorlat – Értékmegosztás

Befejeződött

Ebben a gyakorlatban kipróbálhatja a Polyglot Notebooks speciális funkcióit.

Értékmegosztás

Mutatjuk be, milyen értékes lehet a változók különböző kernelekkel való megosztása a cellák között.

  1. Hozzon létre egy cellát a + Kód gombbal.

  2. A jobb oldalon található legördülő listában válassza a csharp C# szkriptet.

  3. Írja be a következő kódot a kódcellába:

    var products = new []{"Saab", "Volvo", "BMW"};
    foreach(var product in products)
    {
        Console.WriteLine(product);
    }
    
  4. Futtassa a kódcellát a Futtatás ikonnal.

  5. Válassza a Változók menügombot a képernyő tetején található eszköztáron.

  6. Válassza a Megosztás ikont a Műveletek oszlopban.

  7. Ezután válassza ki a JavaScript – JavaScript lehetőséget.

    Képernyőkép a Polyglot Notebook különböző kerneljeiről.

    Létre kell hoznia egy új kódcellát, amely a JavaScriptet kernelként tartalmazza, és a következő kódot tartalmazza:

    #!set --value @csharp:products --name products
    

    Most már rendelkezik olyan kóddal, amely lehetővé teszi egy C#-változó használatát.

  8. Adja hozzá a következő kódot a JavaScript-cellához:

    console.log(products); // it should print Saab, Volvo, Fiat 
    

Értéktároló használata

Próbálkozzunk egy másik változómegosztási esetet. Ezúttal JSON-adatokkal fogunk dolgozni.

  1. Hozzon létre egy új kódcellát a + Kód lehetőség kiválasztásával, majd válassza ki az értéket – Nyers érték tároló kernelhez .

  2. Az új cellába illessze be a következő JSON-t:

    #!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. Futtassa a cellát, és az adatoknak meg kell jelennie a változók táblában, amelyeknek továbbra is nyitva kell lenniük az előző szakaszból. Ha újra meg kell nyitnia, válassza a Változók lehetőséget a képernyő tetején található eszköztáron.

  4. Válassza a megosztás ikont az adatváltozó Műveletek oszlopában.

  5. Válassza ki a csharp C# szkriptet célcellaként. Az új C#-cellának a következő kóddal kell rendelkeznie:

    #!set --value @value:data --name data
    
  6. Ezután illessze be a következő kódot a cellába:

    // 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);
    }
    

Gratulálunk, sikeresen elsajátította a változók megosztásával kapcsolatos további ismereteket.