Comment puis-je déterminer si un objet est local ou distant (à l'aide de l'accès à distance C#)? Les deux vérifiant dans le code local si l'objet est distant ou dans l'objet si le code est exécuté à distance serait correct.Remoting - Un objet est-il distant?
1
A
Répondre
4
if(System.Runtime.Remoting.RemotingServices.IsTransparentProxy(myObject))
Console.WriteLine("Yay - my object is a remoted object.");
else
Console.WriteLine("Boo - my object is not a remoted object.");
0
Je suppose que vous pouvez regarder le proxy et voir si elle dérive de TransparentProxy
var myObj = ....;
if(myObj is TransparentProxy)
Console.WriteLine("I have a remote object");
else
Console.WriteLine("I don't think I have a remote object");
+0
Pourriez-vous me dire quelques détails sur la façon de le faire? TransparentProxy semble être une classe interne et, bien, très * transparente *. – eWolf
J'ai voté pour cette réponse car elle fournit le lien de documentation MSDN à propos d'une méthode FCL spécifique, et j'aime voir les pensées des créateurs référencés. D'autres options peuvent exister mais Microsoft a explicitement adapté cette méthode. –