.Net Core 3.0 à .Net 8 (C#,F#, Visual basic .Net)

Parce qu'il en faut pour tout le monde, discutez ici d'ADA, de shell et autres Wolfram...

Modérateur : Francois

Répondre
Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Bud Spencer » dim. 12 janv. 2020 11:28

Net core 3 => Iot.Device.Bindings => New device binding : Pimoroni Explorer Hat Pro
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Bud Spencer » sam. 18 avr. 2020 18:45

C'est toujour pas pour les enfants, mais pour ceux qui suivent le projet .Net Core, la preview 2 de .Net 5 est dispo et ca passe sans probleme sur un Pi3
https://dotnet.microsoft.com/download/dotnet/5.0
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Bud Spencer » jeu. 23 avr. 2020 19:51

Today, 5.0 preview 3.
https://dotnet.microsoft.com/download/dotnet/5.0

cause codage massif, J'attend quelques jours avant d'envoyer sur le PI de test ...
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Bud Spencer » mar. 5 mai 2020 12:31

Pour ceux que ça intéresse, Le mode autonome permet de déployer des applications depuis et sur n’importe quel système sans aucune distinction de code ou installation préalable sur la cible. J’ai testé ce matin ce mode sur un Pi3 avec application Blazor Asp.Net Core 3.1 qui utilise les gpio (rs232, spi, i2c et pin), des connexions SignalR et un client d’Api Rest.

Pour valider ça, je suis partie d’une sd vierge ou j’ai uniquement installé une rasbian ‘out of box’ et absolument rien d’autre.

Depuis VS, j’ai généré mon application en ciblant linux-arm puis j’ai copié le dossier de sortie sur le PI avec une simple commande scp.

Tout fonctionne parfaitement du premier coup. Je n’ai eu besoin d’installer aucun programme ou librairie sur le PI, pas meme les runtimes ou le sdk .Net Core. Tout ce dont a besoin l’application se trouve dans son propre dossier et n’influe en rien sur le système. L’application tourne de façon totalement indépendante en side-by-side et pour la supprimer sans laisser aucune trace, il suffit de supprimer le dossier.

Voilà qui nous met bien loin de tous les problèmes de versioning, de librairies, de compilateurs et j’en passe et surtout qui permet des déploiements rapide et fiable sans avoir à préparer chaque cible avec tout un tas de package ou composants nécessaire.
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Bud Spencer » mar. 26 mai 2020 15:45

Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Arduino-RPI
Messages : 30
Enregistré le : mar. 26 mai 2020 15:21

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Arduino-RPI » mar. 26 mai 2020 15:52

Bonjour Bud Spencer,
Je viens de lire les 6 pages de ce sujet .Net Core et je vous remercie pour le temps que vous prenez pour "nous" donner toutes ces infos.
Pour ma part, j'ai développé une petite solution d'acquisition de données (tension & intensité) à partir de carte arduino (esp32).
J'aimerai basculer cette solution sur du .Net core (que je connais un peu au travers d'un systeme de log de sonde de température sur un raspeberry + asp.net core et nginx).
Malheureusement, je voulais basculer cette solution d'acquisition de données sur un rpi zero mais le .net core n'est pas pris en charge sur ce dernier (archi armv6 sur rpi zero) et il faut au moins de l'armv7.
J'ai vu qu'il y avait un équivalent au rpi zero -> Orange Pi zero (archi armv7), donc a priori .net core compatible...

Ma question est, au vue de votre expériences/compétences bien meilleures que les miennes, pensez vous qu'un orange pi zéro puisse faire de l'acquisition de données toutes les secondes (au travers d'une appli console .net core + sauvegarde dans db sqlite) sans trop souffrir..?
lien orange pi : http://www.orangepi.org/orangepizero/

Si à l'occasion vous voyez ce message et que vous avez une petite idée, je serai preneur, et merci d'avance.
Et désolé, si ma question dérive un peu du sujet .Net Core ...

Cordialement,

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Bud Spencer » mar. 26 mai 2020 21:14

Alors là mon gars, je ne peux pas te répondre de façon formelle du fait que je n’ai jamais eu de truc orange entre les mains. Après, si je m’en réfère au prérequis (du moins ceux que j’ai en tête …), si le bazard est un arm v7 et qu’il sait recevoir un os compatible avec .Net Core, il ni a pas de raison que cela ne fonctionne pas.

Une petite recherche m’a amené la :
http://www.orangepi.org/orangepibbsen/f ... d&tid=2408
Ça vaut ce que ça vaut …

SQLite : Je n’ai jamais essayé avec Core, mais .Net a toujours supporté tous les SGBD et SQLite en fait partie. Je viens de regarder vite fait et il y a une palanqué de NuGet pour ça y compris les officiels MS (Microsoft.Data.SQLite.Core et meme Microsoft.EntityFrameworkCore.SQLite).

Pour le cœur du projet, à savoir faire l’acquisition d’une paire de données analogique une fois par seconde, aucun soucis (J’ai passé les 1000 datas analogique/seconde sur un pi 3 depuis longtemps déjà ;-) ). Le seul conseil que je pourrais te donner, c’est de buffériser tes données pour enregistrer par block afin de limiter un peu le stress sur la SD.

Voila. C’est à toi de voir si ça vaut le coup de tenter ou pas. Si tu te sens un peu short sur le codage en C# avec .Net Core, je serais très heureux d’essayer de t’aider, mais je n’ai malheureusement ni les moyens ni le temps de tester tous les matériels existant. Juste une question par curiosité : Pourquoi un Zero et pas un PI3 ou 4 ?
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Arduino-RPI
Messages : 30
Enregistré le : mar. 26 mai 2020 15:21

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Arduino-RPI » mer. 27 mai 2020 10:58

Merci Bud pour avoir repondu.
Je laisse tomber pour le Orange PI, car je risque de rencontrer des soucis de bibliotheques avec les GPIO et .net core

Pour la partie SQLite Core, ca marche plutot bien sur un RPI 3 et de l'entity Framework. (retour d'experience tres bonne sur une solution de relevés de température).

Pour la sauvegarde par block pour eviter le stress sur la SD, c'est une tres bonne idée ! Je n'y avais pas pensé et j'ai encore un peu de mal à voir pour l'implémentation mais je vais m'y pencher.

Et pour répondre a ta question, pourquoi un zero et pas un RPI3/4, c'est par soucis de place.
Je veux faire un petit systeme embarqué avec une puce gps, capteur de courant et recepteur RF433, donc le rpi zero était une bonne base pour démarrer.

Bud Spencer
Raspinaute
Messages : 1089
Enregistré le : lun. 15 août 2016 21:38

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Bud Spencer » mer. 27 mai 2020 15:10

Arduino-RPI a écrit :
mer. 27 mai 2020 10:58
Pour la sauvegarde par block pour eviter le stress sur la SD, c'est une tres bonne idée ! Je n'y avais pas pensé et j'ai encore un peu de mal à voir pour l'implémentation mais je vais m'y pencher.
Ce genre de truc, c’est vraiment du gâteau avec .Net et si en plus tu utilises des outils comme LINQ et Entity alors là, tu lui frises les moustaches au gâteau. Tu peux alimenter une list d’objets ou de type de données au fil de tes acquisitions et définir un paramètre qui dit que tu exportes dans la base tous les x enregistrements en utilisant une simple fonction Entity AddRange() appelée avec async. Je bosse en ce moment au boulot sur un programme .Net Core qui interface une DB Sql Server qui contient plus de 800 tables et en utilisant Entity, je n’ai absolument aucune requête SQL dans mon code.
Arduino-RPI a écrit :
mer. 27 mai 2020 10:58
Et pour répondre a ta question, pourquoi un zero et pas un RPI3/4, c'est par soucis de place.
Je veux faire un petit systeme embarqué avec une puce gps, capteur de courant et recepteur RF433, donc le rpi zero était une bonne base pour démarrer.
C‘est sûr que le Zéro à l’avantage d’être beaucoup moins encombrant et surtout consomme beaucoup moins. Il y a par contre le PI3 A+ qui est moins encombrant que les 3B et 4. Il à juste 512Mb de ram au lieu de 1Gb, mais c’est un arm v8 4 core qui pédale à 1.4GHz donc très largement sympathique pour .Net Core.
Modifié en dernier par Bud Spencer le mer. 27 mai 2020 21:57, modifié 1 fois.
Le premier ennemi de la connaissance n’est pas l’ignorance, c’est l’illusion de la connaissance (S. Hawking).

Arduino-RPI
Messages : 30
Enregistré le : mar. 26 mai 2020 15:21

Re: .Net Core 3.0 (C#,F#, Visual basic .Net)

Message par Arduino-RPI » mer. 27 mai 2020 16:04

Je viens de découvrir AddRange(collection obj) avant le SaveChanges()... C'est top ca ! :D !! Moi qui doutait parfois de la nécessité d EF :? ...
J'imagine que l'enregistrement de la collection en base n'est pas aussi rapide qu'un simple enregistrement...Mais j'imagine que c'est pas mal optimisé... ;) Les "open/close" sur la base en moins déja ...

Le PI3 A+ fait bien 2 cm en moins :D , je pensais qu'il était au format standard comme les autres... :roll:

Merci beaucoup Bud !

Répondre

Retourner vers « Autres langages »