Utiliser une fonction C# dans du vb.net

Résolu
cs_lolvega Messages postés 3 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 4 mars 2011 - 3 mars 2011 à 17:55
seb4stien13 Messages postés 31 Date d'inscription lundi 17 novembre 2008 Statut Membre Dernière intervention 11 septembre 2011 - 6 mars 2011 à 18:26
Bonjour,
j'aimerai connaitre la procédure pour inclure un fichier C# (qui contient une fonction) dans un programme en vb.net

jai crée un fichier .cs qui est inclus dans le projet en vb.net le problème est que je n'arrive pas à y accéder.


code vb.net

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
//ici je veux faire appel à ma fonction


End Sub

code c#

using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace FonctionDiversC
{
public class Class2
{
public static long pgcdc(long Lead, long Bight)
{
// Fonction récursive permettant le calcul du PGCD en utilisant l'algorithme d'Euclide
{
return 5;
}
}
}
}


merci d'avance pour votre aide =).

5 réponses

Sehnsucht Messages postés 107 Date d'inscription samedi 25 novembre 2000 Statut Membre Dernière intervention 4 mai 2013
3 mars 2011 à 18:04
Bonjour,

Tu ne pourras pas y accéder comme ça directement, là je vois 2 options:

1) Étant donné qu'il semble s'agir d'une fonction (ou même si ce n'est qu'un exemple, si le code est limité) autant convertir directement le code en VB.Net (pas vraiment ce qu'il y a de plus sorcier)

2) Si tu tiens vraiment à ton fichier .cs, il te faut créer un projet(C#) de type Class Library (ou quelque chose comme ça ^^) le compiler (Project -> Build) aller dans le répertoire de ta solution, récupérer la dll qui a été crée, l'inclure au projet VB.Net et la référencer (Project -> Add Reference) (en gros, je dis ça de mémoire)

Cordialement !
3
cs_lolvega Messages postés 3 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 4 mars 2011
3 mars 2011 à 20:25
d'accord,
donc au final j'ai juste à convertir mon .cs en dll ...

le but du projet que j'ai est de lier du c# et du vb.net ... je ne vois pas l'intérêt mais bon...

merci :)
0
Sehnsucht Messages postés 107 Date d'inscription samedi 25 novembre 2000 Statut Membre Dernière intervention 4 mai 2013
4 mars 2011 à 05:31
Le but, sans être à la place du prof (ou équivalent) est sûrement d'apprendre à le faire, par exemple pour avoir un projet C# (qui permet de faire du code unsafe par exemple) lié à un projet VB.Net (et profiter des XML-Literals pour gérer de manière syntaxiquement plus simple des fichier xml par exemple).

D'ailleurs j'ai oublié une autre solution, qui revient au même que la seconde mais plus simple à mettre en place, simplement créer le projet C# dans la même solution que le projet VB.Net et référencer l'un dans l'autre (selon le sens souhaité) plus besoin de s'embêter à copier des dll.

En ce moment c'est ce que je fais pas mal, pour mixer code F# et code C# (voire en plus code VB.Net).

Cordialement !
0
cs_lolvega Messages postés 3 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 4 mars 2011
4 mars 2011 à 13:35
hum je vois le truc ( de manière théorique).
en effet c'est beaucoup plus sympa.

merci de cette petite information :).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
seb4stien13 Messages postés 31 Date d'inscription lundi 17 novembre 2008 Statut Membre Dernière intervention 11 septembre 2011
6 mars 2011 à 18:26
Ta fonction convertie donne ceci :
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text

Namespace FonctionDiversC
Public Class Class2
Public Shared Function pgcdc(Lead As Long, Bight As Long) As Long
' Fonction récursive permettant le calcul du PGCD en utilisant l'algorithme d'Euclide 
If True Then
Return 5
End If
End Function
End Class
End Namespace
0
Rejoignez-nous