WCF : ChannelFactory

21/07/2009 - 14:49 von msnews.microsoft.com | Report spam
Guten Tag,

ich versuche eine zentral zu verwendende Proxy-Klasse für Client zu
erstellen.

Wenn es so funktioniert, wie ich es mir gedacht habe, soll der Anwender das
Interface an meine Routine übergeben und er bekommt ein gültiges Objekt
zurück.

Damit ein Channel geöffnet wird verwende ich die channelfactory klasse und
übergebe als TChannel das nötige Interface (Das wird durch Intellisence ja
unterstüzt).

Wie kann ich nun genau diesen punkt zentralisieren bzw. kapseln?

Wenn ich einen Verweis auf "TestApplikation.Login.ILogin" habe, müsste ich
das an diese zentrale Routine übergeben können und er würde mir das passende
Channel erzeugen und mri das "Objekt" zurückgeben.


Ich hoffe, das war einigermaßen zu verstehen, was ich hier machen will. :-)

Damit es etwas deutlicher wird schreib ich mal die Funktion hier noch mit
rein:

-
Public Function GetRemoateProxy(ByVal ServiceInterface As System.Type) As
Object
Dim Obj As Object = Nothing

For Each app As Ini.cApplication In poClientIni.Applications
If ServiceInterface.ToString.ToUpper = app.ServiceInterface.ToUpper Then
For Each service As Ini.cService In poClientIni.Services
If service.Name.ToUpper = poClientIni.ServicePointName.ToUpper Then
Obj = New ServiceModel.ChannelFactory(Of -- hier hab ich ein Problem,
da ich das übergebene System.Type nicht weiterreichen kann? )
End If
End If
Next
'Funktionswert
Return Obj
End Function
 

Lesen sie die antworten

#1 Ramezani
22/07/2009 - 08:17 | Warnen spam
Hat sich erledigt: Habe es mit "Generic" hingekriegt.

http://www.tech-archive.net/Archive...02354.html

Geniale Sache. ! :-)

"msnews.microsoft.com" schrieb im Newsbeitrag
news:uDca%
Guten Tag,

ich versuche eine zentral zu verwendende Proxy-Klasse für Client zu
erstellen.

Wenn es so funktioniert, wie ich es mir gedacht habe, soll der Anwender
das Interface an meine Routine übergeben und er bekommt ein gültiges
Objekt zurück.

Damit ein Channel geöffnet wird verwende ich die channelfactory klasse und
übergebe als TChannel das nötige Interface (Das wird durch Intellisence ja
unterstüzt).

Wie kann ich nun genau diesen punkt zentralisieren bzw. kapseln?

Wenn ich einen Verweis auf "TestApplikation.Login.ILogin" habe, müsste
ich das an diese zentrale Routine übergeben können und er würde mir das
passende Channel erzeugen und mri das "Objekt" zurückgeben.


Ich hoffe, das war einigermaßen zu verstehen, was ich hier machen will.
:-)

Damit es etwas deutlicher wird schreib ich mal die Funktion hier noch mit
rein:

-
Public Function GetRemoateProxy(ByVal ServiceInterface As System.Type) As
Object
Dim Obj As Object = Nothing

For Each app As Ini.cApplication In poClientIni.Applications
If ServiceInterface.ToString.ToUpper = app.ServiceInterface.ToUpper Then
For Each service As Ini.cService In poClientIni.Services
If service.Name.ToUpper = poClientIni.ServicePointName.ToUpper Then
Obj = New ServiceModel.ChannelFactory(Of -- hier hab ich ein
Problem, da ich das übergebene System.Type nicht weiterreichen
kann? )
End If
End If
Next
'Funktionswert
Return Obj
End Function

Ähnliche fragen