2010-07-01 4 views

Répondre

1

Oui.

Vous pouvez exposer votre classe C# via COM à la page ASP classique ou créer un service Web .NET que vous pouvez appeler à partir de la page ASP classique.

Personnellement, je suggérerais exposing your C# class via COM (suivez la section "Exposition de C# à COM").

0

Probablement. Vous devrez l'exposer COM.

+0

Wow, il faut haïr, je suppose. Je ne suis pas sûr de savoir pourquoi le vote négatif, comme la réponse est, franchement, correct. La réponse est certainement * pas * un simple "oui", car il y a des éléments qui peuvent l'empêcher d'être appelé depuis ASP classique, et la réponse (comme montré ailleurs) est de COM exposer la DLL. – Robaticus

0

Oui, si vous enregistrez l'assemblage C# en tant que composant COM + (en utilisant regsvcs.exe). Vous pouvez ensuite faire ceci:

Set myObject = Server.CreateObject("mynamespace.myobject.myclass") 
myObject.MyMethod() 
+0

Pourquoi COM +? Pourquoi pas un bon vieux COM? – Robaticus

+0

@Robaticus: AFAIK, vous ne pouvez pas faire cela avec .NET. –

+0

Bien sûr, vous pouvez. C'est ce que l'interop est pour. – Robaticus

0

Une option consiste à utiliser l'utilitaire .NET TlbExp.exe pour créer le CCW pour la bibliothèque .NET. Ce CCW peut certainement être appelé à partir de ASP classique. Vous pouvez instancier en utilisant Server.CreateObject ("...") http://msdn.microsoft.com/en-us/library/hfzzah2c(VS.80).aspx

+0

excellent! ....... –

0

Construire le code C# dans une dll et utiliser REGASM pour l'exposer aux clients COM (comme asp). Alternativement, sur l'onglet settings..compile du projet, vous pouvez cocher la case "Register for COM Interop"

Questions connexes